Django AdminForm field default value

前端 未结 5 1168
生来不讨喜
生来不讨喜 2020-12-29 06:40

I have a Django admin form. And now I want to fill it\'s initial field with data based on my model. So I tried this:

class OrderForm(forms.ModelForm):
    cl         


        
5条回答
  •  自闭症患者
    2020-12-29 07:20

    Since Django 1.7 there is a function get_changeform_initial_data in ModelAdmin that sets initial form values:

    def get_changeform_initial_data(self, request):
        return {'name': 'custom_initial_value'}
    

    EDIT: Apart from that, @Paul Kenjora's answer applies anyway, which might be useful if you already override get_form.

    In case of inline (InlineModelAdmin) there is no get_changeform_initial_data. You can override get_formset and set formset.form.base_fields['my_field_name'].initial.

提交回复
热议问题