symfony - 在 null 上调用成员函数 getAssociationAdmin()
问题描述
在我的管理类中,我有一个一对多字段用作 CollectionType。
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('title', null, ['required' => true])
->add('options', CollectionType::class, [], [
'edit' => 'inline',
'inline' => 'table',
'sortable' => 'position',
]);
}
在 Sonata 创建表单中,单击Add new时它工作正常。但我需要根据创建和编辑自定义表单字段。因此,当我将代码更改为时,
protected function configureFormFields(FormMapper $formMapper)
{
if ($this->isCurrentRoute('create')) {
$formMapper
->add('title', null, ['required' => true])
->add('options', CollectionType::class, [], [
'edit' => 'inline',
'inline' => 'table',
'sortable' => 'position',
]);
}
if ($this->isCurrentRoute('edit')) {
$formMapper
->add('title', null, ['disabled' => true])
->add('options', CollectionType::class, [], [
'edit' => 'inline',
'inline' => 'table',
'sortable' => 'position',
]);
}
}
添加新的在创建表单中不起作用。它在浏览器的网络调试中找到名为append-form-field-element?code=admin...的方法的 null 错误时调用成员函数 getAssociationAdmin() 。
我的问题是,当 $formMapper 对创建和编辑都很常见时,为一对多集合类型添加新按钮有效,但在为创建和编辑表单自定义 $formMapper 时不起作用。
有没有人有建议或解决方案?提前致谢。
解决方案
推荐阅读
- nlp - “RuntimeError:张量的元素 0 不需要 grad 并且没有 grad_fn”错误 BertFoeSequenceClassification
- c# - 如何以阿拉伯语格式 WPF 获取一周中的所有日期名称?
- c++ - 将 n 个向量组合成一个 n 元组向量
- javascript - Laravel Livewire:无法读取未定义的属性“$wire”
- android - TextInputLayout 的全局样式不起作用
- python - 使用 lxml 查找多个标签的值
- node.js - 配置后无法在 Sentry Releases 页面上查看提交
- php - 如何动态过滤掉 MySQL 中的某些行以查询它们?
- django - 在 django 中使用与外键相同模型的记录
- powershell - 在 Powershell 脚本上使用 Invoke-RestMethod 调用 Rest 调用时出现奇怪的行为