假设我有一个运行库存系统的人。每个人都有一些汽车,每辆汽车都有大量的零件(假设是数千个)。
一个人,鲍勃,使用 Django 表单来创建汽车。现在,Bob 去创建一些零件。只有在表单级别,Django 才知道 Parts 属于某个特定的 Car,并且 Parts.ForeignKey(Car) 字段应该只有特定的 Car 作为选项。创建零件时,您必须弄乱表单的构造函数或类似的东西,以便将 Cars 的选择限制为仅 Bob 拥有的汽车。
在表单级别强制执行这种所有权似乎根本不合适或不安全。首先,除了车主之外,任何人似乎都无法访问其他用户的汽车;目前,只有实体形式的编程才能防止任何人查看任何其他人的汽车!其次,以这种方式修改构造函数来解决问题似乎很草率。大家对此怎么看,有什么办法可以强制执行吗?