为什么 save_model 方法在 admin.StackedInline 中不起作用?

发布于 2024-09-05 18:40:47 字数 322 浏览 1 评论 0原文

我有一个与我之前解决的问题类似的问题,除了这次解决方案似乎不起作用:

如何在 django admin 中创建对象时自动插入当前用户?

以前我曾经重写 save_model 来标记用户提交文章。现在我需要对评论做同样的事情,它似乎不再起作用了。

有人有什么想法吗?

多谢!

贾森

I have a similar problem as a previously solved problem of mine, except this time solution doesn't seem to work:

How to auto insert the current user when creating an object in django admin?

Previously i used to override the save_model to stamp the user submitting the article. Now i need to do the same for comments, it doesn't seem to work anymore.

Anyone have any ideas?

Thanks a lot!

Jason

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

森林迷了鹿 2024-09-12 18:40:50

保存不是在 InlineAdmin 的 save_form 中完成的,您必须查看内联所属的 ModelAdmin 中的 save_formsets

 class MyAdmin(admin.ModelAdmin):
    inlines = [MyInlineAdmin,.....]

    def save_formset(self, request, form, formset, change):
        formset.save()
        if not change:
            for f in formset.forms:
                obj = f.instance 
                obj.user = request.user
                obj.save()

The saving isn't done in the InlineAdmin's save_form, you have to look at save_formsets in the ModelAdmin to which the inlines belong:

 class MyAdmin(admin.ModelAdmin):
    inlines = [MyInlineAdmin,.....]

    def save_formset(self, request, form, formset, change):
        formset.save()
        if not change:
            for f in formset.forms:
                obj = f.instance 
                obj.user = request.user
                obj.save()
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文