簡體   English   中英

評論 model 僅限用戶 Django

[英]Comment model for User only Django

我希望你很好。 我從 Django 開始。我只想為用戶創建評論。 我之前創建了一個 UserProfile 頁面(每個成員都有圖像)。

對於我的評論模型。 我是否需要為與 UserProfile 相關的圖像添加字段? 還是 User 就足夠了? 如果用戶評論我想顯示他的用戶名和他的圖像。

class Comment(models.Model):
    post = models.ForeignKey(Post,on_delete=models.CASCADE,related_name="comments")
    user = models.ForeignKey(User)
    content = models.TextField(max_length=160)
    publishing_date = models.DateField(auto_now_add=True)
     
    def __str__(self):
        return self.post.title

models.py(用戶配置文件)

class UserProfile(models.Model):
    user = models.OneToOneField(settings.AUTH_USER_MODEL,on_delete=models.CASCADE)
    image = models.ImageField(null=True,blank=True,default='user/user-128.png', upload_to='user/')
    slug = models.SlugField(editable=False)
    
    def save(self, *args,**kwargs):
        self.slug = slugify(self.user.username)
        super(UserProfile, self).save(*args, **kwargs)
        
        img = Image.open(self.image.path)
        if img.height > 200 or img.width > 200:
            new_size = (200, 200)
            img.thumbnail(new_size)
            img.save(self.image.path)
            
    def __str__(self):
        return self.user.username

評論model不需要添加圖片字段和用戶名字段,因為用戶model是它的外鍵。

你可以像這樣使用 Comments = Comment.objects.values('post', 'user__name', 'user__image')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM