Python 使用Django中的当前登录用户自动填充ForeignKey(用户)

Python 使用Django中的当前登录用户自动填充ForeignKey(用户),python,django,django-models,django-admin,Python,Django,Django Models,Django Admin,我正在从事一个Django项目,在该项目中,用户将在CharFields中输入数据,但为了组织数据,每个用户的帖子都标记有自己的用户名。然而,目前,用户必须通过注册用户的列表才能找到他们的用户名。你可以想象,这既不方便也不方便。是否有任何方法可以让用户字段自动确定当前登录的用户并用该用户的用户名填充该字段 这是我的models.py文件: class Post(models.Model): Post = models.CharField(max_length=7, unique=True

我正在从事一个Django项目,在该项目中,用户将在CharFields中输入数据,但为了组织数据,每个用户的帖子都标记有自己的用户名。然而,目前,用户必须通过注册用户的列表才能找到他们的用户名。你可以想象,这既不方便也不方便。是否有任何方法可以让用户字段自动确定当前登录的用户并用该用户的用户名填充该字段

这是我的models.py文件:

class Post(models.Model):
    Post = models.CharField(max_length=7, unique=True)
    user = models.ForeignKey(User)
这是我对应的admin.py:

admin.site.register(StockTickerSymbol)

是否有任何方法可以将ForeignKey(用户)位设置为当前登录用户的默认值?谢谢。

只需在您的管理员中添加类似的内容即可

class YourAdmin(admin.ModelAdmin):
    def formfield_for_foreignkey(self, db_field, request, **kwargs):                
        if db_field.name == 'user': kwargs['queryset'] = User.objects.filter(user=request.user)   

我将其添加到admins.py文件中。但是我得到了这个错误:
“WSGIRequest”对象没有属性“User”
这可以解决问题吗?