Fixtures
Django가 데이터베이스로 가져오는 방법을 알고 있는 데이터 모음
Fixtures를 사용해 모델에 초기데이터를 추가한다.
migrations, fixtures를 사용해 데이터와 구조를 공유한다.
- 생성 : dumpdata
- 로드 : loaddata
dumpdata
python manage.py dumpdata articles.article > articles.json
정보가 담긴 데이터가 json파일로 생성된다.
python manage.py dumpdata --indent 4 articles.article > articles.json
--indent 4를 추가하면 json구조가 정리되어 확인할 수 있다.
articles에 fixtures 폴더를 만들어서 json파일을 넣어주는 구조로 한다.
loaddata
python manage.py makemigrations
db가 없는 상태를 받았을 때, 먼저 migrate한다.
테이블이 있어야 데이터를 넣을 수 있다.
python manage.py loaddata articles/article.json
경로, 파일명 를 작성하여 loaddata한다.
python manage.py loaddata article.json comments.json users.json
한번에 load할 수 있다. 한번에 load할 때 파일 순서는 관계없다.
한번에 할때는 모델 관계, 순서가 관계없지만 하나씩 load할 경우에는 순서가 중요하다.
article에는 like_users필드가 있기 때문에 users가 먼저 필요하다.
외래키가 없는 user먼저 load해야 한다. -> article -> article을 외래키로 쓰는 comment 순으로 load 할 수 있다.
'Back-end > Django' 카테고리의 다른 글
REST API (1:N) (0) | 2022.11.15 |
---|---|
REST API, 1:N, M:N - movie, actor, review (0) | 2022.10.21 |
Django M:N 관계 - User끼리의 follow 구현하기 (0) | 2022.10.12 |
Django M:N 관계 - 좋아요 버튼 / 프로필 페이지 (0) | 2022.10.12 |
Aggregation (Grouping data) (0) | 2022.10.12 |