gpt4 book ai didi

python - Django Admin changeform_view 方法不允许打开编辑数据

转载 作者:行者123 更新时间:2023-12-01 08:56:27 39 4
gpt4 key购买 nike

在我的 django 项目中,我想添加一个表,其中最后一个数据插入到任何添加/编辑表单上方,因此在我的 admin.py 中我写道:

class t_proj_routeAdmin(admin.ModelAdmin):        
def changeform_view(self, request, obj_id=None, form_url='', extra_context=None):
l_mod = t_proj_route.objects.latest('id')

extra_context = {
'lmod': l_mod,
}
return super(t_proj_routeAdmin, self).changeform_view(request, extra_context=extra_context)

然后在我的模板中使用数据添加表格。如果我打开一个ADD页面,一切就完成了,但是当我尝试修改已经存在的记录时,django将我重定向到一个新的ADD,并且我无法打开所选数据的编辑页面。

我如何使用这种技术来管理添加和编辑记录?

提前致谢

最佳答案

首先,我建议定义这样的方法:

def changeform_view(self, request, obj_id, form_url, extra_context=None):

每次调用编辑和添加操作时都会调用此方法,如果您强制 obj_id 和 form_url 变量为空,则当尝试编辑数据时,该方法会返回一个新的空白表单,即 ADD 模板。

在 return 语句中使用完整的方法变量插入:

return super(t_proj_routeAdmin, self).changeform_view(request, obj_id, form_url, extra_context=extra_context)

应该有效

再见

关于python - Django Admin changeform_view 方法不允许打开编辑数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52744424/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com