我有誰擁有塞一個博客實體,我想這塞被保存在這樣的形式標記內自定義數據屬性:<form data-article-slug="my-slug">
。是否可以將PRE_SET_DATA事件中的自定義數據屬性設置爲表單標記本身?
這是我所期望實現的:
class BlogTypeSubscriber implements EventSubscriberInterface
{
public function onPreSetData(FormEvent $event)
{
$data = $event->getData();
$form = $event->getForm();
$slug = $data->getSlug();
if (!empty($slug)) /* the bellow method does not exist */
$form->setAttr([ 'data-article-slug' => $slug ]);
}
public static function getSubscribedEvents()
{
return [ FormEvents::PRE_SET_DATA => 'onPreSetData' ];
}
}
這是可以做到的樹枝模板,如內幾乎同樣的事情:{{ form_start(form, { 'attr': { 'data-article-slug' : form.vars.value.slug } }) }}
但我覺得這種方式非常redundent而不是Symfony的友好,我怎麼能做到這一點?
你有表單類型?請展示它 –