Project using python/Cloning Airbnb
Django TabularInline and StackedInline
Cog Factory
2021. 2. 21. 10:34
TabularInline
TabularInline은 django.contrib.admin이 제공하는 같은 admin page에서 다른 model을 edit할 수 있는 ability를 부여한다. 예를 들어, photos/models.py에 Photo model이 있다고 하자. 그리고 rooms/admin.py에서 import한다.
그리고 admin.TabularInline을 상속하는 class를 하나 생성하고 model에 Photo model을 초기화한다.
RoomAdmin에 inlines에 위에서 만든 PhotoInline class를 list로 주면 된다.
url 주소를 보면 room-change page다. 여기에 Photo model을 edit할 수 있는 form이 생겨났다.
StackedInline
StackedInline도 TabularInline과 code는 똑같다. 단지 admin page에서 보여지는 form의 형식이 stack 모양이다.
참고 자료
- 노마드 코더의 Airbnb 클론 강의
- InlineModelAdmin
소스 코드
github.com/zpskek/airbnb-clone-v3/commit/23753af0ccf2816830f11267815f0fa5b270141b