使用Symfony2,我跟着tuto如何制作奏鸣曲管理包以管理商店中的产品,它工作正常,我可以添加,删除,修改每个产品(每个产品包含这些列:id,名称,价格,数量) 现在我的问题是如何为这些产品添加类别?在sonata管理员中,我希望能够在将产品添加到其中之前选择已定义的类别(下拉菜单类型,是否可能?)因此我可以轻松管理产品。 此外,我希望能够从同一管理仪表板管理类别(添加/删除/修改)。
(我刚开始使用Symfony2,我是初学者,我需要一个明确的解释并且谢谢你!)
答案 0 :(得分:1)
您需要一个Category实体和一个CategoryAdmin类。然后在您的产品实体中,您将能够添加OneToMany 链接,例如:
class Project
{
/**
* @ORM\OneToMany(targetEntity="Category", mappedBy="categories")
* @ORM\OrderBy({"id" = "ASC"})
*/
private $categories;
}
然后在您的管理员中,您需要查看sonata_type_collection,它允许一对多连接:
祝你好运!
Collection Type
用于处理模型的创建和编辑 集合。可以添加和删除行,以及您的模型抽象 图层可能允许您内联编辑字段。您可以使用type_options
将值传递给基础表单。