Django 16

[django/ubuntu]ubuntu에서 mysqlclient 설치 에러(패키지 설치 하나면 해결)/ERROR: No matching distribution found for Mysqlclient

git remote에서 pull받아 온 후 model 변경 사항이 있어 migrate를 하려고하니 자꾸 error 발생 migarte파일이 꼬여서 인거 같아 DB를 날리고 다시 하려고하니 다시 파이썬 버전 문제 발생ㅜ 그래서 미니콘다 가상 환경 새로 구축한 후 pip install requirements.py 하니 아래와 같은 에러가 발생하였다. 핵심은 밑에 문구이다. ERROR: No matching distribution found for Mysqlclient (landingconda) jisulee@ccom1386:/mnt/c/Users/ccom1386/landingProject/Server$ pip install mysql-python Collecting mysql-python Downloadin..

Django 2022.04.29

[django] ORM Query Set 구조와 원리 그리고 최적화 전략

아래의 강의를 듣다가 요약정리 해봤다. https://www.youtube.com/watch?v=EZgLfDrUlrk 1. QuerySet을 통해 알아보는 ORM 특징 - Lazy Loading 지연로딩 : 정말 필요한 시점에 SQL을 호출한다. #예시 views.py #User를 선언하는 시점에는 퀴리셋에 지나지 않고 실제로 SQL호출을 하지 않는다. query_set = User.objects.all() #list()로 쿼리셋을 호출하였을때 실제 SQL이 실행된다. user_list = list(query_set) - 지연 로딩의 단점 불필요하게 SQL이 두번 호출된다. query = User.objects.all() User = query[0]#한명의 데이터를 가져오기 위해서 실행될 SQL문에 li..

Django 2022.04.27

[django] session 사용법

django의 session django는 session기능을 지원한다. 서버에서 데이터를 저장하고 쿠키의 송수신을 한다. 자세히 설명하자면 데이터는 서버에 저장해 놓고 세션 아이디를 쿠키에 저장한다. 완벽하다고는하는데,,나한테는 완벽하게 적용되지 않는다,ㅜ 해결하려고 정리하는 글을 작성해 본다. session 활성화 django의 session은 미들웨어를 통해 구현된다. 그래서 활성화 하기 위해서는 settings.py에 MIDDLEWARE에 아래의 문구가 있어야한다. 기본적으로 존재하는 문구이다. #settings.py MIDDLEWARE = [ #..생략 'django.middleware.common.CommonMiddleware', #.. ] 데이터베이스 지원 세션 데이터베이스 지원 세션을 사용..

Django 2022.04.25

[django]1대 다 join prefetch_related사용법(ORM방식)

다른 블로그들 잘 정리해 놓은 블로그들이 많았다. 하지만 prefetch_related('') 괄호안에 외래키값를 넣어도 안되고 join할 모델명을 넣어도 join되지 않았다. 이것 저것 조사해본 결과 알게 된것을 나같은 장고 초보자 들도 알 수있게 써보려고 한다. 일단 join할 모델에 대한 설명 class Medicine(models.Model) : med_uid = models.AutoField(primary_key=True) user_uid = models.ForeignKey(USER.User,on_delete=models.SET_NULL,db_column='user_uid',null=True) med_name = models.CharField(max_length=20) med_type = mod..

Django 2022.04.20

[django/에러]403 Forbidden CSRF검증에 실패하였습니다. 요청을 중단하였습니다.

get방식으로 잘되던 사이트가 POST 방식으로 처리하려고 하니까 403에러가 떴다 CSRF는 사이트간 요청 위조 사이트 간 요청 위조는 웹사이트 취약점 공격의 하나이다. 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격이다. 프론트 부분에서 CSRF부분을 만져줘도 되는데 나는 백엔드 개발하니까 괜히 만지기 귀찮아서 아주 간편한 방법을 찾았다. settings.py에 MiddleWare부분에 주석단부분을 주석처리해버렸다. #하나만 하면 될것을 프론트 부분에서 막아보겠다며 몇시간을 버린나,,,,ㅜ 내가 왜 여기서 아등바등하고 있지라는 생각이 스치며 이런게 개발이죠^^ 일단 개발하면서 테스트를 위해 임시로 해놓은 것이기때문에 큰 문제는 없다고 생각한다. 배포하기 전..

Django 2022.04.12

[에러]RuntimeError: Model class example.models.Question doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

유튜브 명준MJ 님의 django 강의를 듣고 다시 복습하기 위해 example 폴더를 만들어 다시 똑같이 만들어 보고있었다. 그러다가 아예 서버가 안돌아가는 상황 발생,,, 제일 아래에 이런 문구가 떠서 구글링 해본결과 RuntimeError: Model class example.models.Question doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS. 얻을 수 있는건 없었다. Apps이 설치가 안되어있어서 mysite폴더 settings.py에 apps을 추가할대는 setting에 들어가서 작성해주어야 했는데 하지 않아 서버가 돌아가지 않았다. 기초적인거 겠지만,,,저같은 사람들을 위해 작성하였습..

Django 2022.04.04
반응형