EasyAdmin 表单 select 框 EntityType 未填充
EasyAdmin form select box EntityType not populating
我正在尝试使用 EasyAdmin 表单中的 OneToMany 关系填充 select 框。但是,status 字段未填充我数据库中的 TaskStatus 记录,而 assignedUsers 则填充。这是我的表单类型:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add(
'assignedUsers',
EntityType::class, [
'class' => User::class,
'label' => 'Choose assigned users',
'multiple' => true,
'required' => true
]
)
->add('status',
EntityType::class, [
'class' => TaskStatus::class,
'label' => 'Task status',
'choice_label' => 'title',
'choice_value' => 'id',
'multiple' => false,
'required' => true
]);
}
这是我的 Task 和 TaskStatus 实体关系:
任务:
/**
* @ORM\ManyToOne(targetEntity="App\Components\Task\Entity\TaskStatus", inversedBy="task")
*/
protected $status;
任务状态:
/**
* @ORM\OneToMany(targetEntity="App\Components\Task\Entity\Task", mappedBy="status")
**/
private $task;
问题是我为我的 TaskStatus 实体使用了错误的存储库:
/**
* @ORM\Entity(repositoryClass="App\Components\Task\Repository\TaskRepository")
*/
右一是:
/**
* @ORM\Entity(repositoryClass="App\Components\Task\Repository\TaskStatusRepository")
*/
我正在尝试使用 EasyAdmin 表单中的 OneToMany 关系填充 select 框。但是,status 字段未填充我数据库中的 TaskStatus 记录,而 assignedUsers 则填充。这是我的表单类型:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add(
'assignedUsers',
EntityType::class, [
'class' => User::class,
'label' => 'Choose assigned users',
'multiple' => true,
'required' => true
]
)
->add('status',
EntityType::class, [
'class' => TaskStatus::class,
'label' => 'Task status',
'choice_label' => 'title',
'choice_value' => 'id',
'multiple' => false,
'required' => true
]);
}
这是我的 Task 和 TaskStatus 实体关系:
任务:
/**
* @ORM\ManyToOne(targetEntity="App\Components\Task\Entity\TaskStatus", inversedBy="task")
*/
protected $status;
任务状态:
/**
* @ORM\OneToMany(targetEntity="App\Components\Task\Entity\Task", mappedBy="status")
**/
private $task;
问题是我为我的 TaskStatus 实体使用了错误的存储库:
/**
* @ORM\Entity(repositoryClass="App\Components\Task\Repository\TaskRepository")
*/
右一是:
/**
* @ORM\Entity(repositoryClass="App\Components\Task\Repository\TaskStatusRepository")
*/