簡體   English   中英

Django Admin-自定義內聯表單

[英]Django Admin - Custom Inline Form

我正在嘗試在django管理員中使用自定義內聯表單。

admin.py-

class EmpInline(admin.StackedInline):
    model = Emp
    form = UpdateYearlyForm
    show_change_link = True

class CompanyAdmin(admin.ModelAdmin):
    list_display = ('companyname','companyid','get_active', 'get_updated')
    inlines = [EmpInline]

單擊公司名稱后,將顯示公司詳細信息以及所有相關員工的表格集。

這在顯示表單方面起作用,但是字段之一是自定義選擇字段,它間接更新了模型字段。 在普通用戶視圖中(對於所有記錄,管理員都需要使用此表格,對於與它們相關的記錄,用戶也需要使用此表格)。自定義字段的處理方式如下。

我只顯示了一段視圖,因為它很長。

views.py-

if formset.is_valid():
        for form in formset.forms:
            if form.is_valid():
                obj = form.save(commit=False)
                data = form.cleaned_data
                if data['updatefield'] == 'accident':
                    obj.years += 1
                else data['updatefield'] == 'free':
                    obj.years += 1
                obj.save()

在admin中用作內聯表單時,是否可以以相同方式處理表單(和自定義字段)?

如果可以幫助任何人-覆蓋表單本身上的save()函數可以解決此問題,並且它可能是更好的做法,因此我更改為在用戶和管理員端都使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM