在Django中我使用:
return HttpResponseRedirect(reverse("admin:article_article_add"))
我可以看到管理员"添加"页面。
在这种情况下,我可以以某种方式为我的模型的字段设置值吗?
也许这是不可能的,或者我找不到它。
当我重定向到"添加新的"时,我想预定义一些字段。页
答案 0 :(得分:1)
你可以通过在GET中传递一些值来做到这一点,但这不会一直有效(例如,对于datefields等...),我会使用ModelAdmins方法自定义get_form
class MyModelAdmin(admin.ModelAdmin):
def get_form(self, request, obj=None, **kwargs):
form = super(MyModelAdmin, self).get_form(request, obj, **kwargs)
form.base_fields['your_field_name'].initial = 'abcd'
return form
答案 1 :(得分:0)
您是否尝试将其添加到字符串中?
reverse("admin:...")+"&fieldname=value"
你可能需要像这样使用格式化
return HttpResponseRedirect('%s%s'%(reverse("..."), '&field=value'))
取决于您的值,您可能还需要使用uri编码例程(有很多方法可以执行此操作)。