DVD/BDをデータベースに保存するDjangoベースのムービーコレクションを作成しています。アプリケーションは、これらのムービーをアーカイブに保存します。ユーザーは1つのアーカイブを持つことができますが、複数のユーザーがアーカイブを使用できます(たとえば、家族は同じアーカイブを共有できます)。そして、Djangoモデルと同じ:ユーザーのみが映画やユーザーのアーカイブに属するその他の情報を見ることができることを、確認してくださいすることをお勧めDjangoのユーザーIDに基づいてコンテンツをフィルタリングするベストプラクティスはありますか?
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()はジョブを実行しますが、すべてのビューに対して1回だけ行われるようにフィルタリングする方法はありますか?ミドルウェアは?またはデコレータ?