我使用Symfony和奏鸣曲包,我有2个实体,与ManyToOne / OneToMany关系相关,如下所示:
一个类别可以有许多SubCategory实体。为此,在Sonata的FormMapper
中,当我添加一个新类别时,我想添加一个按钮来显示一个弹出窗口以创建多个SubCategory ..所以如何覆盖Sonata的Twig to去做?
CategoryAdmin
class CategoryAdmin extends AbstractAdmin
{
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('name')
->add('subcats', 'entity', array(
'class'=> 'ProductBundle\Entity\SubCategory',
'multiple' => true,
))
;
}
}
答案 0 :(得分:0)
您可以添加以下内容来使用您的模板:
$formMapper
->add('name')
->add('subcats', 'entity', array(
'class'=> 'ProductBundle\Entity\SubCategory',
'multiple' => true,
'attr' => array('template'=> 'your\path\to\twig')
))
;
并且此树枝应该从 base_edit_form.html.twig
延伸{% extends 'SonataAdminBundle:CRUD:base_edit_form.html.twig' %}
{% block field %}
<div>
// put your code here
</div>
{% endblock %}
或者您有其他可以解决问题的解决方案,您可以使用 Sonata_Type_Model
->add('subcats','sonata_type_model', array(
'multiple' => true,
'by_reference' => false
))
此解决方案将为您提供一个添加和删除按钮来创建您的SubCategory