在我的表单中,我需要创建自己的字段类型“ImageType”才能显示标记。
这里是我用来创建表单的代码:
$form = $this->createFormBuilder($image)
->add('title')
->add('description')
->add('file')
->add('path', new ImageFieldType());
这里是ImageTypeField定义:
class ImageFieldType extends AbstractType
{
public function getDefaultOptions(array $options)
{
return array(
'path' => null,
);
}
public function getParent()
{
return 'field';
}
public function getName()
{
return 'imageField';
}
}
模板:
{% block imageField_widget %}
{% if path is not null %}
<img src="{{ asset('upload/dir/' ~ path) }}" />
{% endif %}
{% endblock %}
我的问题是path
始终为空。
我希望在使用path
时收到$image
createFormBuilder()->add('path'
属性的值....
有人可以帮帮我吗?
更新
解决了,我使用form.vars.value.path
,但form.vars.value
已经足够了!
答案 0 :(得分:0)
如果path
来自您的表单,那么您将在表单中检索它:
form.vars.value.path
示例:
{% if form.vars.value.path is not null %}
<img src="{{ asset('upload/dir/' ~ form.vars.value.path) }}" />
{% endif %}