【发布时间】:2014-05-06 08:22:46
【问题描述】:
要向 Django 管理员添加一种简单类型的复制功能,我想呈现模型的默认管理员添加形式,但具有默认值。我知道添加表单接受 GET 参数来预填充大多数字段,但我并不总是想复制 M2M 引用,有时还需要复制引用的对象。
我想在代码中做什么:
def some_view(self, request, pk):
modeol_original = FooModel.objects.get(pk)
model_copy = FooModel()
copy_attributes_custom(model_original, model_copy)
return render_default_django_add_page_for_model(model_copy)
正如 cmets 中提到的 dhana,这可以在以下位置看到:Django set default form values,但仅适用于自定义模板。我不想使用默认的 Django Admin 添加表单/模板。
【问题讨论】:
-
Django 管理员不允许您轻易地复制模型实例。您必须创建一个自定义管理视图来执行此操作。
-
但是如何在该自定义视图中为未保存的模型实例呈现默认的添加/编辑表单?
标签: django