数据如何连接到特定的用户ID?
问题描述:
我是Django和python的新手。我已经完成登录表单,但我需要知道。我如何连接页面的内容与用户。 例如:这是一个Q &一个网站。当您登录时,它会显示用户之前询问的问题的个人资料页面。数据如何链接到模型中的特定用户ID? 可以使用User对象来完成吗?如果是这样,你能给我一个简单的脚本例子吗?数据如何连接到特定的用户ID?
谢谢。
答
凡是“属于”给用户,要么有一个ForeignKey
或ManyToManyField
(取决于对象是否是由一个用户或多个拥有)到User
就可以了。然后,你可以筛选基于所述User
模型:
SomeModel.objects.filter(user=some_user)
# where `user` is the name of your foreign key field
或者,可以通过经由反向关系访问模型用户,例如:
class SomeModel(models.Model):
...
user = models.ForeignKey(User)
# Later ...
some_user.somemodel_set.all()
第二种方法是更典型的因为您通常已经从请求中获得了用户,因此在您看来,您只需执行以下操作:
somemodels = request.user.somemodel_set.all()
T o获取属于当前登录用户的所有SomeModel
。
+0
谢谢克里斯普拉特。这正是我需要的。 – rnk 2012-01-04 15:50:09
你可以发表一些你写的代码到目前为止的例子吗?你想用这个应用程序来实现什么? – 2012-01-04 14:34:43
它可以使用指向User对象的ForeignKey字段来完成。这太基本了,我建议你阅读文档,如[这里](https://docs.djangoproject.com/en/1.3/intro/overview/)和[教程](https://docs.djangoproject .COM/EN/1.3 /前奏/ tutorial01 /)。 – demalexx 2012-01-04 15:14:08