2011-06-11 118 views
1

我正在开发基于Symfony-Doctrine的应用程序。我用混凝土表继承 strategy.But现在我面临一些问题。我有以下表格:Symfony混凝土表继承

产品:有一些性质在

计算机:扩展产品。

笔记本:扩展计算机。

Ipad:扩展计算机。

....等等..很多表不同类别,我有以下questions.Can任何人可以帮助或给出一个来源?

  • 在我的主页我有搜索框,根据产品名称进行搜索。哪些表我必须编写搜索查询?

  • 第二个问题。再次在我的主页上,我查看了一些来自不同表格的产品。然后用户点击其中一个产品。我将如何决定哪个表ID?

回答

1

具体继承给你可能是最干净的模式,但它不允许你查询几个表。因此,对于具体的继承,您必须为每个子模型类编写查询,并合并结果。 如果我是你,我会读this page about the search in symfony,并写一个lucene查询来实现这个多级搜索。它会更快,而且可能更容易。

您的产品的路线应该如下所示:/ product /:product_category /:product_subcategory/id您无法找到具有跨表格的唯一ID的产品。

+0

谢谢greg0ire您的兴趣。我会阅读那篇文章。我还编辑了第二个问题。 – qasanov 2011-06-11 18:52:45

+1

@qasanov:我更新了我的答案 – greg0ire 2011-06-11 21:43:55