我正在创建一个将DVD/BD存储到数据库的基于Django的电影集合。应用程序将这些电影保存到存档。用户可以拥有一个档案,但档案可以被多个人使用(例如,家庭成员可以共享相同的档案)。而同样与Django模型:根据Django中的用户标识过滤内容的最佳实践?
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
archive = models.ForeignKey(Archive, blank=True, null=True)
class Archive(models.Model):
name = models.CharField(max_length=200)
class Movie(models.Model):
archive = models.ForeignKey(Archive)
title = models.CharField(max_length=200, null=True, blank=True)
什么是确保,即用户只能看到电影,属于用户的存档等信息的最佳做法?
当然filter()可以完成这项工作,但是有没有一种方法可以完成过滤功能,以便所有视图都只执行一次?用中间件?还是装饰者?