Pass initial value to a modelform in django

前端 未结 3 2257
渐次进展
渐次进展 2021-02-13 20:22

How can I pass an initial value for a field to a model form. I have something like the following code

class ScreeningForm(forms.ModelForm):
    class Meta:
             


        
3条回答
  •  半阙折子戏
    2021-02-13 20:32

    In case anyone is still wondering, the following works to set initial values for an Admin form:

    class PersonAdmin(admin.ModelAdmin):
        def get_form(self, request, obj=None, **kwargs):
            form = super(PersonAdmin, self).get_form(request, obj=obj, **kwargs)
            form.base_fields['log_user'].initial = get_current_user()
            return form
    

    Note that you can also set initial values via URL parameters: e.g. /admin/person/add?log_user=me

提交回复
热议问题