1
class Application(models.Model):
    name = models.CharField(max_length=100)
    icon_url = models.CharField(max_length=100)
    app_url = models.CharField(max_length=200)

required_permissionアクセス許可の外部キーとなる別のフィールドを追加したいと思います。そのフィールド定義はどのように見えるべきですか?

この背後にある理由は、テンプレートでは、このようなもの (疑似コード) を使用できるためです。

{% for app in application_list %}
    {% if user_has_permission(app.required_permission) %}
        Show App
    {% endif %}
{% endfor %}
4

1 に答える 1

0

あなたrequired_permissionはすることができますCharField。この機能で使用する権限のリストを作成できる限り。

has_perms(perm_list, obj=None)
ユーザーが指定された権限をそれぞれ持っている場合に True を返します。ここで、各 perm の形式は です"<app label>.<permission codename>"。ユーザーがアクティブでない場合、このメソッドは常に False を返します。

obj が渡された場合、このメソッドはモデルの権限をチェックするのではなく、特定のオブジェクトの権限をチェックします。

Django テンプレートではパラメータを取る関数を呼び出せないことに注意してください。テンプレート タグを記述する必要があります。

于 2013-03-26T05:29:46.090 に答える