php – 将角色分组到Sonata表单中的一个复选框
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 将角色分组到Sonata表单中的一个复选框,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1349字,纯文字阅读大概需要2分钟。
内容图文
![php – 将角色分组到Sonata表单中的一个复选框](/upload/InfoBanner/zyjiaocheng/767/68bd8f022d03418c8fb13e964b9d344e.jpg)
我在Sonata面板中有一个表单,可以将角色设置为一个组
我希望在复选框中使用相同的角色字段,因此我添加了’expanded’=>对我的领域真实
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('name')
->add('roles', SecurityRolesType::class, [
'expanded' => true,
])
;
}
但我明白了
我正在尝试将此角色ROLE_ADMIN_USER_EDIT,ROLE_ADMIN_USER_LIST …分组到ROLE_ADMIN_USER
我尝试了一些我在这里找到的选项:http://symfony.com/doc/current/reference/forms/types/choice.html但没有任何效果
如何将此角色分组,如我的第一个屏幕截图,但有复选框?
谢谢
解决方法:
为此,您需要覆盖Sonata base_edit_form_macro模板并更改默认渲染
{# If field name is `roles` then override classic extended multiple select #}
{% if field_name == 'roles' %}
<div class="form-group">
{# Render form field name #}
<label for="roles_field"
class="col-sm-3 control-label"
>
{{ field_name|capitalize }}
</label>
<div id="roles_field"
class="sonata-ba-field col-sm-9 sonata-ba-field-standard-natural"
>
{# Render each groups role #}
{% for label, choices in form.roles.vars.choices %}
{# Render group role name #}
<label>
<b>{{ label }}</b>
</label>
{# Render each roles of a group #}
{% for key, choice in choices %}
{{ form_widget(form.roles.children[key]) }}
{{ form_label(form.roles.children[key]) }}
{% endfor %}
{% endfor %}
</div>
</div>
{% else %}
{{ form_row(form[field_name])}}
{% endif %}
然后角色表单将显示如下
内容总结
以上是互联网集市为您收集整理的php – 将角色分组到Sonata表单中的一个复选框全部内容,希望文章能够帮你解决php – 将角色分组到Sonata表单中的一个复选框所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。