【发布时间】:2015-12-01 10:29:06
【问题描述】:
我有以下型号:
class Journal(models.Model):
project_name = models.TextField()
intro = models.TextField(blank=True)
start_time = models.DateTimeField()
end_time = models.DateTimeField()
creator = models.ForeignKey(User)
group = models.OneToOneField(Group)
contact_info = models.TextField(blank=True)
allow_anon = models.BooleanField(default=True)
created = models.DateTimeField(auto_now_add=True)
我想在用户提交表单时保存此模型的记录。所有必填字段的值都与表单一起提交,因此我假设 request.data 会将它们包含在其中,但 creator 字段除外。
由于我使用令牌身份验证,因此可以在 HTTP 标头中传递一个可以识别用户的令牌。根据this post,我可以使用 request.META('whatever') 从标头中提取此令牌密钥。然后我将能够根据令牌检索用户实例。
到目前为止一切顺利,我的问题是下一步,如何编写一个可以在保存时获取 request.data 和用户实例的序列化程序?
我想我应该使用基于上面定义的模型的ModelSerializer。但是如何将用户实例转换为可序列化的形式,以便ModelSerializer 可以在保存时使用?
【问题讨论】:
标签: django django-rest-framework