0

我有一个博客,更多用户应该通过管理面板登录并发布一些内容。我的问题是我只想允许用户在他的用户名下发布。

我的模型.py:

class Post(models.Model):
    author = models.ForeignKey(User)
    ...

admin.py 或 models.py 应该如何修改?

4

1 回答 1

2

首先,从管理表单中排除作者字段。然后在 admin save_model方法中添加登录用户为作者:

class PostAdmin(admin.ModelAdmin):
    exclude = ['author',]

    def save_model(self, request, obj, form, change):
        if obj.author is None:
            obj.author = request.user
        obj.save()
于 2013-10-10T09:46:16.110 回答