我有一个Chart由多个模型组成的Box模型(所以Box有一个外键Chart)。Box模型有一个字段number定义它们在Chart.
现在Box将有一个返回其内容的方法。内容是什么,取决于前一个盒子和下一个盒子的属性(如果有的话)。因此,从Box模型中我需要参考前面Box的和即将到来的Box。
现在我看到两个选项:
- 为 previous 和 next 制作外键
Box。 - 要求
Chart一个盒子在哪里number = (current box number -1 or +1)
最有效的方法是什么?为什么?如果我使用外键方法,它会做额外的查询还是自动建立这个连接?当然,我必须select_related在查询集上使用才能获得完整的Chart. 您认为哪个选项最具可扩展性?
我知道我当然可以对此进行测试,但我想知道其他人会怎么想,以及是否还有其他我没有意识到的解决方案。