【问题标题】:How to Create Friends Object having 2 foreign keys?如何创建具有 2 个外键的好友对象?
【发布时间】:2019-11-16 13:04:51
【问题描述】:

我有一个好友数据库,其中包含以下字段:

class Friends:
          status = models.CharField(max_length=10)
          from_user = models.ForeignKey(AUTH_USER_MODEL, on_delete=models.CASCADE, related_name = 'from_user')
          to_user = models.ForeignKey(AUTH_USER_MODEL, on_delete=models.CASCADE, related_name="friend_user")
          date_modified = models.DateTimeField(auto_now=True, blank=True)
          date_created = models.DateTimeField(auto_now_add=True, null=True)

          def create(self,request, **kwargs, ):
              friend = self.create(from_user=request.user.id, status="Pending")
          return friend


          class Meta:
              unique_together = (('from_user', 'to_user'),)

          def __str__(self):
              return self.to_user

我无法在视图中创建朋友对象,如下所示:

def add_friend(request, pk): 
         """Sending friend request to email"""
          f = Friend(from_user=request.user.id,to_user=to_user.id,status= "Pending")
        f.save()

属性错误:无法通过用户实例访问管理器

【问题讨论】:

    标签: django django-views python-3.6


    【解决方案1】:
    # You need to store in id instead of object
    
    def add_friend(request, pk): 
        """Sending friend request to email"""
        f = Friend(from_user_id=request.user.id,to_user_id=to_user.id,status= "Pending")
        f.save()
    

    【讨论】:

    • 无法重定向到页面。它给出了 Value 错误 Cannot assign "2" Friend.from_user must be User instance.
    猜你喜欢
    • 1970-01-01
    • 2011-05-10
    • 1970-01-01
    • 2010-09-21
    • 2020-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多