Django 使用select_related和prefetch_related
这是我的两个模型课Django 使用select_related和prefetch_related,django,models,prefetch,django-select-related,Django,Models,Prefetch,Django Select Related,这是我的两个模型课 class UserProfile(models.Model): user=models.OneToOneField(User) profile_pic=models.ImageField(upload_to='profilepics/%Y/%m/%d/',default='\LoginPage\images\default.jpg') def __unicode__(self): return self.user.username def __st
class UserProfile(models.Model):
user=models.OneToOneField(User)
profile_pic=models.ImageField(upload_to='profilepics/%Y/%m/%d/',default='\LoginPage\images\default.jpg')
def __unicode__(self):
return self.user.username
def __str__(self):
return self.user.username
class Video(models.Model):
username=models.ForeignKey(UserProfile,on_delete=models.CASCADE,default="",related_name='uservideos')
video=models.FileField(upload_to='videos/%Y/%m/%d/',default='')
videotitle=models.CharField(max_length=100)
likes=models.PositiveIntegerField(default=0)
dislikes=models.PositiveIntegerField(default=0)
def __str__(self):
return self.video.url
这是我的查看功能,我想使用select_related选择并显示特定用户的所有视频,但我得到一个错误消息
“FileDescriptor”对象没有“选择相关”属性
def usermainview(request):
username=request.POST['username']
tempuser=User.objects.get(username=username)
videolist=Video.video.select_related('user').get(username=tempuser)
return render(request,'AfterLogin/main.html',{'videolist':videolist})
Video.Video
或Video.objects
?Video是类名,Video是指向媒体文件的链接