In Django admin adminモデル(請求書モデルなど)の独自のフォームをオーバーライドおよび実装したい。
請求書フォームに顧客名、製品名の自動入力フィールドを追加し、カスタム検証(顧客の与信限度など)も行いたい。 Django adminによって提供されるデフォルトのフォームをオーバーライドして独自のフォームを実装するにはどうすればよいですか?
私はDjangoを初めて使用します。ご意見をお寄せください。
ModelAdminのフォーム属性を独自のフォームクラスに設定することにより、Djangoの組み込み管理用のフォームをオーバーライドできます。見る:
フォームテンプレートをオーバーライドすることも可能です- https://docs.djangoproject.com/en/dev/ref/contrib/admin/#custom-template-options をご覧ください
オートコンプリートを特に探している場合は、お勧めできます https://github.com/crucialfelix/Django-ajax-selects
docs に従ってDjango adminでフォームをオーバーライドする方法:
from Django import forms
from Django.contrib import admin
from myapp.models import Person
class PersonForm(forms.ModelForm):
class Meta:
model = Person
exclude = ['name']
class PersonAdmin(admin.ModelAdmin):
exclude = ['age']
form = PersonForm