【发布时间】:2015-02-12 02:49:10
【问题描述】:
我是 django 的新手,我有一个调查应用程序,管理员在其中创建有问题的调查,问题有选择...我已将 save_as = True 添加到我的调查管理员,但是当我复制调查时,副本中存在问题,但选项中没有..
class SurveyAdmin(admin.ModelAdmin):
save_as = True
prepopulated_fields = { "slug": ("name",),}
fields = ['name', 'insertion', 'pub_date', 'description', 'external_survey_url', 'minutes_allowed', 'slug']
inlines = [QuestionInline, SurveyImageInLine]
我尝试在 save_model 方法中使用 deepcopy,但得到 “NOT NULL 约束失败:assessment_question.survey_id”,从回溯来看,尝试保存时问题的 pk 似乎是 None。有没有更好的方法通过管理员复制调查,或者如何修复我的 deepcopy 应用程序?
def save_model(self, request, obj, form, change):
if '_saveasnew' in request.POST:
new_obj = deepcopy(obj)
new_obj.pk = None
new_obj.save()
提前感谢您的帮助。
【问题讨论】:
标签: python django django-admin