728x90
(프로젝트 구성 ~ HTML 사용하기)는 이전 포스팅을 참고하길 바란다.)
1. 모델 만들기
MVC(Model, View, Controller)
소프트웨어 개발 방법론 중 하나
장고에서 데이터를 사용하기 위한 필수 조건
- 사용할 데이터 베이스 설정 ( 기본값 : sqlLite)
- 테이블 형태 정의
1) 모델 생성
(1) models.py 설정
from django.db import models
# Create your models here.
class Todo(models.Model):
content = models.CharField(max_length= 255)
하나의 모델을 하나의 클래스로 나타냄
Todo라는 모델에 대해서 데이터가 content 라는 값 하나를 가짐.
데이터의 형태 : charfield 형태
데이터 최대 길이 : 255
(2) 모델을 서버에 적용
- python manage.py makemigrations
- my_to_do_app에 migration 이라는 폴더 생성
$ ls
db.sqlite3 manage.py* my_to_do_app/ ToDoList/
$ python manage.py makemigrations
Migrations for 'my_to_do_app':
my_to_do_app\migrations\0001_initial.py
- Create model Todo
- python manage.py migrate
- migration 파일들을 확인해서 데이터 베이스에 적용
- 0001.initial 파일 생성
$ python manage.py migrate
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying auth.0012_alter_user_first_name_max_length... OK
Applying my_to_do_app.0001_initial... OK
Applying sessions.0001_initial... OK
(3) 확인
- Django DB에 접근해서 확인
python manage.py dbshell
$ python manage.py dbshell
SQLite version 3.39.3 2022-09-05 11:02:23
Enter ".help" for usage hints.
sqlite>
- 테이블 확인
.tables
sqlite> .tables
auth_group django_admin_log
auth_group_permissions django_content_type
auth_permission django_migrations
auth_user django_session
auth_user_groups my_to_do_app_todo
auth_user_user_permissions
- 테이블 정보 확인
PRAGMA table_info(my_to_do_app_todo);
sqlite> PRAGMA table_info(my_to_do_app_todo);
0|id|INTEGER|1||1
1|content|varchar(255)|1||0
- 데이터 확인
- SELECT * FROM my_to_do_app_todo;
sqlite> SELECT * FROM my_to_do_app_todo;
아무런 데이터가 없기 때문에 조회되지는 않는다.
다음 포스팅에서는 텍스트가 서버에 전송될 수 있도록 코드를 구현한다.
'Web > Django' 카테고리의 다른 글
[Web] ExcelCalculate with django for Mac - 1 (0) | 2023.07.31 |
---|---|
[Web] django로 Todolist 만들기 for Mac - 4 (0) | 2023.07.28 |
[Web] django로 Todolist 만들기 for Mac - 3 (0) | 2023.07.28 |
[Web]django gmail 발송 for Mac (0) | 2023.07.27 |
[Web] django로 Todolist 만들기 for Mac - 1 (0) | 2023.07.26 |