扩展EntityType将实体类添加到变量

时间:2016-06-23 09:29:02

标签: php doctrine-orm symfony

在我的某个表单中的实体选择列表旁边,我需要添加一个指向该实体管理页面的链接。

enter image description here

为了生成链接,我需要实体的类名

/admin/Customer

我正在扩展EntityType以传递类名,尝试将其设置在变量中。

public function buildView(FormView $view, FormInterface $form, array $options)
{
    $view->vars['entity_class'] = $options['class'];
}

public function getParent()
{
    return EntityType::class;
}

现在,如果我尝试使用新的entity_class变量

{% block entity_widget -%}
    {{ form_widget(form) }} {{ entity_class }}
{%- endblock %}

我收到错误

  

变量" entity_class"不存在......

如果我尝试转储表单变量

{% block entity_widget -%}
    {{ form_widget(form) }} {{ dump(form.vars) }}
{%- endblock %}

我看到了

//...
"placeholder_in_choices" => false
"entity_class" => "AppBundle\Entity\Customer"
//...

尝试使用form.vars.entity_class会给我另一个错误,说明密钥未设置

我做错了什么?如何访问自定义变量?

0 个答案:

没有答案