Backend
-
VS Code에서 Django Debug 설정Backend/Django 2023. 10. 15. 22:54
2023.10.15 Pycharm에서 Django 디버그 를 진행했던 것처럼 VS Code에서 도 Django Debug가 가능한 설정을 진행하려고 함. 참고: https://code.visualstudio.com/docs/python/tutorial-django Python and Django tutorial in Visual Studio Code Python Django tutorial demonstrating IntelliSense, code navigation, and debugging for both code and templates in Visual Studio Code, the best Python IDE. code.visualstudio.com 1. Python Interpreter를 Vi..
-
PyCharm에서 Django 디버그 모드 활성화하기Backend/Django 2023. 10. 10. 23:45
PyCharm 2019.3.5(Professional) 기준 작성 됨. Settings(Ctrl+Alt + S) - Languages & Frameworks - Django ‘Enable Django Support’ 체크 ‘Django project root:’ 에 디버깅할 프로젝트의 최상위 경로 입력 ‘Settings:’ 에 디버깅할 프로젝트의 config/settings. 경로를 입력 끝. OK 클릭 Edit Configuration (상단 메뉴의 Run 하위에 있음.) ‘+’ 버튼 클릭 → Django server 선택 Name은 선택사항. 끝. OK 클릭 디버그 모드 시작하면 python manage.py runserver 부터 실행함. (따로 웹 서버 구동할 필요 x) 원하는 지점에 중단점 찍고..
-
트랜잭션Backend/DB 2023. 9. 30. 16:00
http://wiki.hash.kr/index.php/트랜잭션 트랜잭션 - 해시넷 트랜잭션(transaction)이란 "쪼갤 수 없는 업무 처리의 최소 단위"를 말한다. 거래내역이라고도 한다. '트렌젝션'이 아니라 '트랜잭션'이 올바른 표기법이다. 영어로 간략히 Tx라고 표기하기도 한다. wiki.hash.kr 더 이상 쪼갤 수 없는 업무 처리의 최소 단위. 거래내역이라고도 한다. 데이터베이스의 부정합을 방지하고 완전성을 유지하는 목적으로 사용된다. 트랜잭션이 정상적으로 처리되면 커밋 Commit하고 그렇지 않으면 롤백Rollback되어 DB는 트랜잭션 수행 이전의 상태를 유지하게 된다. ex) A가 B에게 1000원 송금 A의 계죄는 1000원이 감소하고, B의 계좌는 1000원이 증가해야 함. → 어..
-
[Clone-Coding][배프의 오지랖] onlineshop - AWS 관련Backend/Projects_report 2023. 9. 23. 12:24
6.3 데이터베이스 설정하기 2023.09.06 AWS RDS 이용하여 MySQL Server 구축 (배프랖, 6.3 내용) RDS: 관계형 데이터베이스 진행 과정) parameter 그룹 생성 데이터베이스 인스턴스 생성: “퍼블릭 액세스: 예” → 몇 분 소요됨. 인스턴스가 생성되는 동안 보안 규칙 생성: 인바운드에 모든 IP 대역(0.0.0.0/0)으로 MYSQL 접근 허용하는 규칙 추가 문제1) 배프랖 내용대로 데이터베이스 인스턴스 생성 후 pycharm에서 python manage.py migrate 하였으나 ⚠️ django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on 'onlineshop-db.cuqmz5shveri...
-
class MetaBackend/Django 2023. 9. 18. 18:32
class Meta django Model에 metadata를 추가하는 기능을 제공. (metadata: 데이터를 설명하는 데이터, 또는 데이터를 목적에 따라 재구성한 데이터) 사용자가 직접 추가하는 Model의 속성(필드)은 매 번 바뀔 수밖에 없다. 그러나 Model의 속성들을 '정렬(ordering)' 하거나, 'DB Table의 이름(db_table)'을 짓거나 어떤 속성의 '복수형 표현(verbose_name, verbose_name_plural)'을 지정하거나 하는 등 일부 사용법들은 대부분의 Model에서 필요하다. 이처럼 Model을 관리할 때 공통적으로 필요한 사용법들의 구체적인 방식을 지정하도록 해주는 것이 class Meta이다. (..라고 나는 이해했다.) 자주 쓰이는 Meta op..
-
django 입문(5) Model 3) DB에 Table 생성Backend/Django 2023. 9. 17. 23:50
Model 설계 및 구성이 완료되면 마이그레이션(Migration)을 해줘야 구현한 모델대로 Database Table이 생성된다. migrate : 장고 프로젝트에 존재하는 App들(ex. models, admin, auth, sessions 등…)이 필요로 하는 데이터베이스 테이블들을 생성.(각 App의 models.py 에 정의된 모델 내용대로 생성됨.) 프로젝트 생성 후 DB 작업이 필요하다면 최초 1 번은 해줘야 할 필요가 있음. python manage.py migrate {app} (작업파일번호) makemigrations: 모델이 신규로 생성되거나 변경되었을 때(즉, 모델을 수정했을 때에도 makemigrations 후 migrate을 실행해야함.), migrate 전에 수행해야 하는 명령..
-
django 입문(5) Model 2) 추가 기능Backend/Django 2023. 9. 17. 23:48
filter() 공식 문서: https://docs.djangoproject.com/en/4.0/topics/db/queries/ django.db.models.Model.objects 의 멤버 함수. parameter로 전달되는 조건을 충족하는 Object를 담고 있는 QuerySet 을 반환한다. 만약 조건을 충족하지 못하면 빈 QuerySet을 반환한다. ( Foreign Key로 다른 model 을 사용할 때 사용할 수 있는 속성 Model A와 B가 있을 때 Model B의 Foreign Key가 A 객체를 가리키면, Model A 객체에서는 a.b_set(a는 객체명, b Model B의 이름을 소문자로 바꾼 것.) 의 사용이 가능하다. 즉 Model A 객체에서 자신을 Foreign Key ..