3使用Django Admin的分层订购应用程序

时间:2012-10-05 10:49:45

标签: python django postgresql

  

可能重复:
  Nested inlines in the Django admin?

我正在使用Python,Django和PostgreSQL开发一家餐饮公司的应用程序。我试图使用Django Admin模块作为添加订单的方法。我希望能够在一个页面上做所有事情。我开始相信这可能是不可能的。
别担心,只有办公室工作人员才会使用这部分软件,而不是普通大众。

我们的定价结构适用于每人的物品数量,乘以所照顾的人数。

以下是一个例子:


订购“​​假公司”:

  • 2件商品的早茶,价格为8.00 x 10ppl:#这就是我们所说的交易,商品没有价格。
    • 无麸质饼干x1
    • 香肠卷x10
    • 饼干x9
  • 3件物品的午餐,价格为10.00 x 10ppl:
    • 香肠卷x5
    • Sushi x5
    • 三明治x10
    • Sweet Platter x10

总计:180美元


每个订单在数据库中的结构方式如下:
- 公司
- 销售(与公司的一对一关系)
-DEAL_INSTANCE(与销售和交易的一对一关系)
-ITEM(通过连接表与DEAL_INSTANCE的多对多关系,作为项目数量
字段是必需的)

我设法获得了所有内容,但在一个页面上将项目添加到DEAL_INSTANCE。由于Django Admin并不喜欢用'through'属性定义的多对多关系。

这是指向我已有的屏幕截图的链接,只是为了澄清事情(只需复制图像位置以查看完整尺寸):What I have so far.

所以最后,我问是否可以使用Django Admin在一个页面上完成整个过程? 如果没有,使用Django的最佳方法是什么,我应该更改数据库的布局吗?

在此先感谢,我知道这是一个奇怪的情况让你的头脑。 我是Django新手,但精通Python;所以当谈到Django时你可能需要握住我的手。

1 个答案:

答案 0 :(得分:0)

不,管理员无法使用嵌套的内联。

#9025 Nested Inline Support in Admin

管理界面并非真正设计为通用界面以外的任何其他界面,不应该用于访问除最受信任用户之外的任何人。

在非管理员django视图中嵌套内联并不困难:谷歌搜索" django嵌套内联"揭示了一些解决方案。