Cyb*_*hoe 5 python django modelform
我知道 Django 2.0 中有一个新功能,它是 ModelAdmin 中的 AutocompleteSelect 小部件。我试图在我的自定义 modelForm 中使用它,但失败了。
像这样试过
#unit is the foreign key to the incident
class AccountForm(forms.ModelForm):
class Meta:
model = Invoice
...
...
widgets = { 'incident':widgets.AutocompleteSelect(Invoice._meta.get_field('incident').remote_field, admin.site)
}
...
Run Code Online (Sandbox Code Playgroud)
#Invoice model
class Invoice(models.Model):
...
incident = models.ForeignKey(Unit, on_delete=models.CASCADE,null=True)
...
Run Code Online (Sandbox Code Playgroud)
希望任何人都可以帮助我。谢谢
小智 5
AutocompleteSelect 小部件将无法在管理站点之外工作。如果您在管理站点中使用 AccountForm,则可以使用以下代码:
class AccountForm(forms.ModelForm):
...
incident = forms.ModelChoiceField(
queryset= Unit.objects.all(),
widget=AutocompleteSelect(Invoice.incident.field.remote_field, admin.site),
)
...
class Meta:
model = Invoice
fields = [
'incident',
...
]
@admin.register(Invoice)
class InvoiceAdmin(admin.ModelAdmin):
form = AccountForm
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1426 次 |
| 最近记录: |