0

私は Django 1.5 プロジェクトで実際に岐路に立っています。右折または左折する前にコミュニティのアドバイスが必要です。

ここに私のモデルがあります記事 モデル

class Article(models.Model):

    title = models.CharField(max_length=1000, verbose_name="Titre")
    zone = models.ForeignKey('Zone', verbose_name=u"Area")

と私のゾーンモデル

   class Zone(models.Model):
        name = models.CharField(max_length=50, unique=True)
        slug = models.CharField(max_length=50, unique=True)

        def __unicode__(self):
            return unicode(self.name)

        class Meta:
            ordering = ['name']

各記事は地理的な「ゾーン」にあります。

私のすべてのユーザーも同じ「ゾーン」に依存しており、ユーザーと同じ「ゾーン」に属する記事を編集/追加/削除できます。

パス #1:

django-guardian と連携する必要があります。長期的に見れば報われるか、やり過ぎか?

パス #2:

ForeignKey CustomUser Model <-> Zone Model <-> Article Model を設定するだけです。次に、先に進む前に、各ビューで CustomUser.Zone == Article.Zone かどうかを確認します。

パス #3:

あなたの電話。

4

1 に答える 1

0

プロキシ モデルを作成し、ModelAdmin でクエリセットを変更して、そのプロキシ モデルに対する権限を管理するのが最善のようです。

http://lincolnloop.com/blog/2010/dec/16/using-proxy-models-customize-django-admin/

于 2013-03-18T20:30:01.653 に答える