具有自己数据的用户的Django模型

时间:2014-06-06 17:08:27

标签: database django model

我打算构建一个应用程序,每个用户只能访问自己的数据。 每个用户都应该能够添加/编辑/删除自己的数据。表中的列应如下所示:

"Product name" "Date of purchase" "Price" "Warranty" "Comments"

我假设最多100个用户的应用程序大小,每个用户最多1000个项目。 现在,我想知道我应该建立什么样的模型。 我应该创建一个表并添加“用户”列,然后按用户过滤此表,还是应该创建3个表:“用户”,“项目”和“用户到项目关系”? 你有什么意见?哪种解决方案最适合此类应用?

2 个答案:

答案 0 :(得分:1)

您可以在一个models.py文件中创建2个表。一个表应该包含用户数据,另一个表应该包含项数据,外键字段将其与单个用户相关联。

答案 1 :(得分:0)

一种方法是将 2 模型,UsersItems与ForeignKey一起提供给User模型。这将导致 2 表。然后,您可以添加逻辑,仅允许用户修改/删除属于它们的Item个对象。

另一种选择是使用类似django-guardian的内容。