【发布时间】:2016-10-03 09:27:14
【问题描述】:
首先我的具体问题是:我应该怎么做才能在创建新预约时在所有医生之间进行选择?
现在是背景:
从 Typo 4.7 更新到 6.2 后,我遇到了一些类似这样的问题:
创建新的Appointment 时,我需要一个选择字段,用户可以在其中选择Doctor。
所以我做了这个:
<f:form.select property="doctor" options="{doctors}" optionLabelField="lastName" />
我的 Extensionbuilder 设置:Appointment 是一个具有 Doctor 类型关系的实体:“n:1”Doctor 是一个扩展 \TYPO3\CMS\ 的实体Extbase\Domain\Model\FrontendUser
在我的 AppointmentController 我放了
/**
* doctorRepository
*
* @var \Vendor\Extensionname\Domain\Repository\DoctorRepository
* @inject
*/
protected $doctorRepository = NULL;
我在newAction 中写道:
$doctors = $this->doctorRepository->findAll();
...
$this->view->assignMultiple(array(
'doctors' => $doctors,
));
这样没有项目显示在我的选择字段中,即使我有一些 Doctor 类型的 fe_users。
然后我尝试通过这样做来查看$doctors 里面的内容:
\TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($doctors);
但它说:
Caught exception: Unknown column 'fe_users.sorting' in 'order clause'
编辑: 接受的答案解决了这个问题。
然后它显示了律师对象,但选择仍然是空的。 后来我自己找到了这个问题的答案(见我自己的答案)。
【问题讨论】: