0

次の権限を含むMetaクラスを追加しましたが、Metaクラスに入れるだけで追加されたのか、何かを追加したり、特定の方法で割り当てたりする必要があるのか​​わかりません。これが私のコードです:

class Contractor(models.Model): 
    contractor_verified = models.BooleanField(default=False)    
    Employer = models.OneToOneField(Employer)
    job_title = models.CharField(max_length=50)
    name = models.CharField(max_length=250)

    class Meta:
        permissions = (
        ("permission", "perm"),
        ("bid", "bid"),
        ("send_request_to_verifier", "send_request_to_verifier"),
        ("gain_points", "gain_points"),
        ("loose_points", "loose_points"),
        )

不明な点がありましたらごめんなさい。Djangoユーザーのインスタンスではないオブジェクトにカスタム権限を追加する方法についてのヘルプが必要です

4

1 に答える 1

0

djangoパーミッションシステムは、ユーザーモデルとグループモデルのパーミッションをサポートするために、すぐに使用できるように設計されています。オブジェクトのアクセス許可に関するdjangoドキュメントから:https ://docs.djangoproject.com/en/1.3/topics/auth/#handling-object-permissions

Djangoのパーミッションフレームワークにはオブジェクトパーミッションの基盤がありますが、コアには実装されていません。つまり、オブジェクトのアクセス許可をチェックすると、常にFalseまたは空のリストが返されます(実行されたチェックによって異なります)。

一般的なオブジェクトレベルのアクセス許可を探している場合は、ここに多数の利用可能なパッケージがあります:http: //pypi.python.org/pypi ?%3Aaction=search&term=django+permissions&submit=search

これらの中には、モデルレベルの権限を実装するだけのものもあれば、インスタンスごとの権限を定義できるものもあります。

于 2012-04-25T23:58:01.590 に答える