我正在开发一个应用程序,我希望将用户角色输入到数据库中的表中。
class Role(models.Model):
name = models.CharField(max_length = 40)
details = models.TextField()
class Foo(models.Model):
name = models.CharField(max_length = 40)
details = models.TextField()
class Bar(models.Model):
name = models.CharField(max_length = 40)
detauls = models.TextField()
foos = models.ManyToMany(Foo,related_name="foo_binding_and_roles")
我希望表foo_binding_and_roles的模式类似于:
{|id|Foo_id|Bar_id|Role_id|}
我仍然在摸不着头脑,想知道是否有可能。我知道如果我写一个自定义管理器我可以把它拉下来,但我想避免这种情况。
这个方案背后的想法是,当bar遇到foo并且foo符合bar时,在关系的基础上为用户分配权限。
答案 0 :(得分:1)
我不明白你到底想要做什么,但是读这一行:{|id|Foo_id|Bar_id|Role_id|}
让我觉得您可以使用这些字段定义模型,或者使用该额外字段设置through model。
答案 1 :(得分:0)
为了简化这一过程,您可以更清楚地思考它,不要使用多对多关联,并使用多对一关联构建整个方案。如果我理解你的话,我认为你正在寻找的是使用三向关联课程。