如何解决如何在与树枝的多对多关系中使用现有数据对 EntityType 字段进行水合?
我是 Symfony 的新手。我有 2 个实体:用户和公司,具有多对多关系。
在我的 EditController 中,我使用 EntityType 字段将一个或多个公司分配给一个用户:
->add('companies',EntityType::class,[
'class' => Company::class,'choice_label' => function($company) {
return $company->getName();
},'multiple' => true
])
在我用于修改用户的管理页面中,我必须多次返回表单,因此我必须在 twig 中手动恢复用户数据:
{% for user in users %}
<tr>
<td>{{ user.id }}</td>
{% set form = formObject.createView %}
{{ form_start(form,{'action': path('admin_edit_user',{'id': user.id}),'method': 'POST'}) }}
<td>
{{ form_widget(form.email,{'value': user.email}) }}
</td>
<td>
{{ form_widget(form.lastName,{'value': user.lastName}) }}
</td>
<td>
{{ form_widget(form.firstName,{'value': user.firstName}) }}
</td>
<td>
// This is where I don’t know how to do it
{{ form_widget(form.companies) }}
</td>
<td>
{% if user.enabled %}
{{ form_widget(form.enabled,{'attr': {'checked': 'checked'}}) }}
{% else %}
{{ form_widget(form.enabled) }}
{% endif %}
</td>
<td>
{{ form_widget(form.role,{'value': user.roles}) }}
</td>
<td>
<button class="btn" type="submit">Edit</button>
{{ form_end(form) }}
{{ include('admin/user/_delete_form.html.twig') }}
</td>
</tr>
{% endfor %}
如何确保自动选择用户所属的公司?
或者有其他方法可以多次渲染表单吗?也许在渲染之前用控制器中的数据对表单进行保湿?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。