Cra*_*tis 7 python django permissions
Django 1.4的权限/身份验证文档提供了以下代码片段,用于以编程方式创建自定义权限:
编辑:(我想采用这种对于那些权限不,不一定链接到一个特定的模型类,但跨越多个类型的更一般的权限)
from django.contrib.auth.models import Group, Permission
from django.contrib.contenttypes.models import ContentType
content_type = ContentType.objects.get(app_label='myapp', model='BlogPost')
permission = Permission.objects.create(codename='can_publish',
name='Can Publish Posts',
content_type=content_type)
Run Code Online (Sandbox Code Playgroud)
我的问题是,其中的代码应该放置的位置.显然这些应该只创建一次,但我不想在shell中这样做.看起来这应该存储在某个文件中.(出于文档的缘故.)
通常只需使用meta属性将所需的权限添加到相应的模型类中就足够了permissions。
这是来自官方文档:
class Task(models.Model):
...
class Meta:
permissions = (
("view_task", "Can see available tasks"),
("change_task_status", "Can change the status of tasks"),
("close_task", "Can remove a task by setting its status as closed"),
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2558 次 |
| 最近记录: |