![](/img/trans.png)
[英]The show action of Symfony 2 Sonata Admin Bundle is not working
[英]Unable to set custom data in show action field in symfony sonata admin
我有一個顯示頁面,我想添加一個自定義值。
我嘗試做我在其他操作中所做的事情,即使用 data 鍵將數組添加到第三個參數,如下所示:
protected function configureShowFields(ShowMapper $showMapper)
{
$showMapper
->add('name')
->add('dateEnd')
->add('example', null,
array('data' => 'example value')
)
;
}
在 configureListFields 操作中,這是有效的。 我已經使用 data 屬性注入了自定義值。
但是我仍然無法訪問show.html.twig
文件中的關鍵示例。 它給了我這個錯誤
變量“示例”不存在。
我應該怎么做才能訪問樹枝文件中的這個自定義變量?
嘗試
{{ elements.elements.example.options.data }}
在你的樹枝模板中
我使用了這個解決方案。 在 Admin 類的configureShowFields()
方法中:
$showMapper
->with('Tab Name')
->add(
'any_name',
null,
[
'template' => 'Admin/Custom/any_name_show_template.html.twig',
'customData' => $this->someRepository->getSomeEntityBy($field),
'anotherCustomData' => $this->someService->getSomeDataBy($value),
]
)
;
在自定義模板中,您可以通過field_description.options.<customFieldName>
訪問自定義數據,因此對於提供的示例數據訪問器將是{{ field_description.options.customData }}
和{{ field_description.options.anotherCustomData }}
對於 Twig 模板中較短的字段名稱,您可以這樣做:
{% set customData = field_description.options.customData %}
並訪問自定義數據,如{{ customData }}
希望這會有所幫助並節省時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.