以下是用于创建表单的代码:
$form = $this->createFormBuilder($city)
->add('name', 'text')
->add('images', 'collection', array('type' => new ImageType())
->getForm();
城市images
财产,是Image
实体的集合。
这里的定义ImageType
class ImageType extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder->add('path', new ImageFieldType());
}
public function setDefaultOptions(OptionsResolverInterface $resolver) {
$resolver->setDefaults(array('data_class' => 'My\Bundle\Entity\Image',));
}
public function getName() {
return 'image';
}
}
这是我的自定义字段类型的代码ImageFieldType
:
class ImageFieldType extends AbstractType {
public function getDefaultOptions(array $options) {
return array('path' => null);
}
public function getParent() {
return 'field';
}
public function getName() {
return 'imageField';
}
}
为了呈现ImageFieldType
我使用以下块:
{% block imageField_widget %}
{% if form.vars.value is not null %}
<a href="{{ path('_cityManage') }}/CityID/ImageID">
<img class="image_type" src="{{ asset('uploads/documents/' ~ form.vars.value) }}" />
</a>
{% endif %}
{% endblock %}
我怎样才能得到这个树枝块中的city.id
和电流?image.id
我试过了{{ id }}
,但这个打印类似于form_image_0_path
.
我的目标是链接到页面path('_cityManage')/city.id/image.id