0
我有一個CateringOrder模型的模型管理員,它有一個多對多表中的餐館列表。這些可以在我包含的InlineModelAdmin上添加和修改。訪問來自父級的InlineModelAdmin的表單數據Admin
我想訪問內聯表單上的表單字段。我注意到他們可以在form.data中訪問,但我覺得必須有一個更簡單的方法。
這裏是我的代碼:
class CateringOrderRestaurantForm(forms.ModelForm):
notify = forms.BooleanField(label="Notify?", required=False)
def save(self, _request, catering_order_restaurant, form, change):
import pdb;pdb.set_trace()
catering_order_restaurant.save()
class CateringOrderRestaurantInline(admin.TabularInline):
model = CateringOrderRestaurant
form = CateringOrderRestaurantForm
notify = forms.BooleanField(label="Notify?", required=False)
fields = ["restaurant", "priority"]
list_display = ("restaurant", "priority", "notify")
raw_id_fields = ["restaurant"]
extra = 1
class CateringOrderAdmin(admin.ModelAdmin):
fields = [
"status",
"super_hub",
"delivery_location",
"delivery_date",
"delivery_preference",
"non_vegetarians",
"vegetarians",
"vegans",
"headcount",
"rough_budget_per_head",
"dietary_notes",
"additional_requests",
"delivery_notes",
]
list_display = ('id', 'delivery_location', 'super_hub', 'status', 'delivery_date', 'headcount', 'budget')
list_filter = ('status', 'delivery_date',)
readonly_fields = ('status', 'headcount',)
search_fields = ('delivery_location__company__name', 'delivery_preference',)
raw_id_fields = ["delivery_location"]
actions = ['cancel', 'finalize_orders']
inlines = (
CateringOrderRestaurantInline,
CateringOrderItemInline
)
def save_model(self, _request, catering_order, form, change):
import pdb;pdb.set_trace()
catering_order.save()
if not change:
email_inquiry(catering_order)
我需要訪問在CateringOrderAdmin的覆蓋save_model方法的通知字段的值。