奏鸣曲管理员,覆盖模板中的选择?

Posted

技术标签:

【中文标题】奏鸣曲管理员,覆盖模板中的选择?【英文标题】:Sonata admin, override select in template? 【发布时间】:2014-12-04 16:29:39 【问题描述】:

我正在使用奏鸣曲管理员并且我正在覆盖一个模板。

我在这个模板中创建了一个选择,当我显示页面时,我看不到我的选择,而是一个带有 UL 和 LI 的 html 代码。

似乎奏鸣曲通过他的代码覆盖了他的模板中的选择。

我怎样才能删除它?我想要我的选择,而不是奏鸣曲覆盖的选择。

【问题讨论】:

【参考方案1】:

Sonata 使用 select2,一个用于自定义选择元素呈现的 javascript 库。

要在您的选择上禁用 select2,您需要添加属性 data-sonata-select2="false" :

<select data-sonata-select2="false"></select>

奏鸣曲中的相关代码: https://github.com/sonata-project/SonataAdminBundle/blob/master/Resources/public/Admin.js#L76

【讨论】:

formMapper 字段中的快捷方式:->add('category', 'sonata_type_model', array('attr'=>array('data-sonata-select2'=>'false') ) ) 来源:sonata-project.org/bundles/admin/2-3/doc/reference/…【参考方案2】:

你也可以为整个奏鸣曲关闭 select2:

sonata_admin:
    options:
        use_select2:    false # disable select2

http://sonata-project.org/bundles/admin/master/doc/reference/select2.html

【讨论】:

以上是关于奏鸣曲管理员,覆盖模板中的选择?的主要内容,如果未能解决你的问题,请参考以下文章

如何在奏鸣曲管理列表视图中添加“后备标签”

在奏鸣曲管理实体的显示模板中添加自定义表单

编辑对象奏鸣曲管理包

管理员的奏鸣曲媒体验证

在奏鸣曲管理员中隐藏下载按钮

以奏鸣曲管理员的编辑形式为用户设置角色