我有一个很多列的大型数据库表。类似这样的:django中数据库表的各个列的权限?
+------------+-------+-------+-----+--------+
| postalcode | stat1 | stat2 | ... | stat70 |
+------------+-------+-------+-----+--------+
| V0A1A1 | 0.1 | 10 | ... | 100 |
| V0A1A2 | 0.4 | 20 | ... | 300 |
| V0A1A3 | 0.2 | 40 | ... | 200 |
| .... | ... | ... | ... | ... |
| Z9Z9Z9 | 0.3 | 30 | ... | 400 |
+------------+-------+-------+-----+--------+
我的django应用程序当前通过简单的SQL查询为所有用户提供访问权限。
我希望能够通过Django API访问数据,特别是我希望能够赋予特定用户对表中某些列的权限而不是其他权限。
我应该如何用django模型来解决这个问题?
我应该让每一列都有一个不同的模型,并有相应的表格吗?这将是很多模型,并有很多表格!
或者我应该为整个表创建一个模型?这将是很多领域!我将如何处理链接用户到字段?
或者我不应该创建表的django模型,而是创建一个跟踪表列的权限的元模型,并以某种方式使用它来调解SQL查询到数据表?
+------+--------+------------+
| user | column | permission |
+------+--------+------------+
| 1 | stat1 | true |
| 2 | stat1 | false |
| 2 | stat2 | false |
| 3 | stat1 | true |
| 1 | stat3 | false |
| ... | ... | ... |
| 100 | stat70 | true |
+------+--------+------------+
这似乎不是很django-y莫名其妙。
我希望有一个更清洁,更Django的解决方案,但它不会发生在我身上。建议?
谢谢ascripter!我的情况绝对是你描述的第二个 - 高度细化的,用户特定的(或者至少它可能变得如此,所以我需要对它进行计划)。 – 2015-02-07 17:25:18