41 장고어드민 커스터마이징 - FK
41.1. 어드민 수정하기
py_blog 과 py_blog_detail 테이블을 생성했습니다.
1:N 관계이며, ForeignKey 로 연결되어 있습니다.
py_blog 에 데이터 등록하면서 py_blog_detail 테이블에도 같이 데이터를 넣겠다는 뜻이죠.
admin.py에 detail 모델을 등록하면 모델 마다 따로따로 데이터를 넣어야 합니다.
위 화면에서 detail도 같이 입력할 수 있도록 수정하겠습니다.
41.1. 어드민 수정하기 - admin.py
위 그림과 같이 코드를 추가합니다.
list_display 는 목록 화면의 필드 표시입니다.
fieldsets 의 fields는 py_blog 의 입력받을 컬럼입니다.
inlines 에 containPythonBlog 추가하여 세부 사항(PyBlogDetail)에 추가할 수 있습니다:
#myapp/blog/admin.py
class containPythonBlog(admin.StackedInline):
model = PyBlogDetail
extra = 3
class admin_pythonblog(admin.ModelAdmin):
list_display = ('id','title','regist_dt','update_dt')
fieldsets = [
(None, { 'fields': ['title'] }),
]
inlines = [ containPythonBlog ]
admin.site.register(PyBlog, admin_pythonblog)
admin.site.register(PyBlogDetail)
41.3. 장고 어드민 접속 - py_blog 글쓰기
Comments
Login: