참고자료
https://dschloe.github.io/python/2023/07/django_todolist_1/
[Django Project ToDoList - 1]
Django 프로젝트를 구성 해 보자 01.
웹 개발의 왕 중요 요소 CRUD
이번엔 U(Update) 를 제외 한 C(Create) R(Read) D(Delete) 를 사용한다.
이번에 할 것
템플릿 추가 -> 웹 페이지를 페이지 답게 만들어 보자
MTV -> MTV 중 M(Model) 의 왕기초를 불러보자
python BD인 SQLite -> 세팅과 쿼리 해 보자
시작하기
0. 가상환경을 구성하고 프로젝트 세팅을 하자
- 가상환경(VSCode) : https://kimec995.tistory.com/8
- 가상환경(Pycharm) : https://kimec995.tistory.com/7
- Django 프로젝트 시작하기 : https://kimec995.tistory.com/9
01. 템플릿을 위한 폴더 생성
이전에 생성한 실행 폴더 [my_to_do_app] 에 [templates] 폴더를 생성,
그 안에 [index.html] 파일을 생성한다.
T(Templates) 를 생성한다.
주의사항)
Templates - index.html 로 바로 가면 가끔씩 runserver 오류가 생긴다.
해결하려면 Templates - app명 폴더 생성 - index.html 로 경로를 만들어 준다.
ex) my_to_do_app - templates - my_to_do_app(생략하지말것) - index.html
[index.html] 파일에 코드를 작성한다.
https://github.com/doorBW/Django_with_PracticeExamples/tree/master/project/Django-PracticeProject
이 html 과 다른 코드들은 Django 한 그릇 뚝딱 에서 따와 수정 한 것으로 코드를 사용 할 때마다 감사함을 떠올리자.
02. [views.py] 코드 수정
def index(request):
return render(request, "새로 생성 한 인덱스.html")
03. 서버 확인
이쁘게 적용 되었다.
04. Model 관리 왕 기초 시작
실행 앱 폴더[my_to_do_app] 내부의 [models.py] 를 열면 이런 모습이다.
하단 이미지와 같이 채워준다.
from django.db import models
django.db 모듈 안에는 models 라는 클래스가 있다.
- django.db : 모듈 데이터 베이스 관련 기능을 제공
- models : 데이터 베이스의 모델을 정의하는 다양한 클래스 제공. 여기에선 CharField 를 사용하기 위해 불러온다.
class Todo(models.Model) :
content = models.CharField(max_length=255)
- CharField : djnago 모델에서 사용 하는 데이터베이스 필트 타입. 문자열 데이터를 저장하는데 사용한다. [max_length] 를 이용해 최대 문자열의 길이를 제한한다.
05. 마이그레이션 파일 생성
데이터 베이스 변경 사항을 마이그레이션 파일로 생성.
모델의 필드를 추가, 삭제, 수정하면 데이터 베이스의 구조가 변경되고, 이를 추적한다.
python manage.py makemigrations
잘 된 모습
06. 마이그레이션 실행
python manage.py migrate
많은 ok 이 들이 나오며 실행된다.
07. SQLite 실행
파이썬에서 사용하는 SQLite.
가벼운 SQL 정도로 생각하면 편하다.
python manage.py dbshell
잘 적용 된 모습.
08. 테이블 조회
DB에 정의된 모든 테이블을 출력한다.
sqlite> .tables
[auth_user_groups] 에 주목하자. 기본 설정으로 적용된다.
사용자 그룹과 사용자 간의 Many-to-Many 관계를 나타내는 중간 테이블.
09. 테이블 열 조회
sqlite> PRAGMA table_info()
- PRAGMA : DB에 직접 접근하는 설정 변경 함수. DB의 속성과 동작을 제어하는 SQL 대체 함수.
번외)
CommandError: You appear not to have the 'sqlite3' program installed or on your path
해결
- SQLite: 파이썬에서 제공하는 간단한 DB 가안깔려서 에러나는것.
참고
https://kimec995.tistory.com/15
[SQLite 오류 00_미설치
환경 VSCode 에서 django 사용 중 DB 사용을 위해 SQLite 실행 -> 하단 오류 메시지 CommandError: You appear not to have the 'sqlite3' program installed or on your path Windows 10 64 해결 설치한다. 1. SQLite 템플릿 다운로드 htt
kimec995.tistory.com](https://kimec995.tistory.com/15)
'django' 카테고리의 다른 글
django Basic Prac02_03 Read + Delete (0) | 2023.08.13 |
---|---|
django Basic Prac02_02 Db + Create (1) | 2023.08.09 |
django Basic Prac01_03 CRUD (0) | 2023.08.03 |
django Basic Prac01 _ 01프로젝트 시작하기 (0) | 2023.07.26 |