1

我想对少数内容拥有一些权限,这些内容不是models,而是下表中的“名称”:

mysql> select * from my_contents;
+----+---------------------+
| id | name                |
+----+---------------------+
|  1 | content1            |
|  2 | content2            |

我知道Django 的 Permission 模型需要一个 ContentType 实例。django_content_type table所以,我还用任意的app_label和插入了这两个条目model。就像是:

| 20 | content1  | some_label    | content1  |
| 21 | content2 | some_label     | content2  |

现在,我在想这两个新内容的运行syncdb权限将在 中自动创建auth_permission,但相反,我得到:

The following content types are stale and need to be deleted:

    some_label | content1
    some_label | content2

如何更新这 2 个内容的权限(无模型)?

4

1 回答 1

0

您尝试做的事情听起来像是每个对象的权限。对于模型中的每个对象,您要为其设置权限。Django 不支持这一点,但django-guardian支持。如果您查看链接,它提供了一个关于如何实现此结果的简单示例。

如果你真的想要一个没有匹配模型的权限,那么看看这个片段。没有亲自测试过

于 2015-02-12T03:01:38.230 回答