У меня есть модель для статуса. Он отображает весь статус красиво. Теперь я хочу показать все статус или действия конкретного пользователя на странице пользователя. Как я могу запросить все status
и liked status
для конкретного пользователя?как запросить пользователь для модели в django
Пожалуйста, исправьте меня, если я ошибаюсь. Я попробовал это в оболочке, но показывает пустой:
>>> from status.models import *
>>> from django.contrib.auth.models import User
>>> s = Status.objects.get(id=3)
>>> s
<Status: sdfjsdklsdf>
>>> s.creator
<User: [email protected]>
>>> u = User.objects.get(id=6)
>>> u
<User: [email protected]>
>>> u.status_set.all()
[]
>>>
Вот мой models.py:
from django.db import models
from django.contrib.auth.models import User
from datetime import datetime
from time import time
def get_upload_file_name(instance, filename):
return "uploaded_files/%s_%s" %(str(time()).replace('.','_'), filename)
class Status(models.Model):
status = models.TextField()
image = models.ImageField(upload_to=get_upload_file_name, blank=True)
pub_date = models.DateTimeField(default=datetime.now)
creator = models.ForeignKey(User, related_name="creator_set")
likes = models.ManyToManyField(User, through="Like")
class Meta:
ordering = ['-pub_date']
verbose_name_plural = ('Status')
def __unicode__(self):
return self.status
class Like(models.Model):
status = models.ForeignKey(Status)
liked = models.ForeignKey(User)
liked_date = models.DateTimeField(default=datetime.now)
def __unicode__(self):
return "%s likes %s" % (self.liked, self.status)
Пожалуйста, проверьте и наставит меня. Спасибо!
Спасибо, и как я могу запросить статус понравившегося вам пользователя? – Robin
Спасибо! Кстати, пожалуйста, объясните мне последнюю строчку. – Robin
Вы получаете все объекты 'Like' для пользователя, а затем выполняете понимание списка, чтобы получить статус для каждого экземпляра' Like'. –