我有一个TYPO3扩展名,它提供了我的雇员列表。有一个表用于存放员工数据,例如姓名,联系方式等,而另一个表则带有部分。大多数员工都分配了一个部门,但不是全部。
我想对列表进行排序,以便所有具有相同部门的员工都紧随其后,并在姓氏之后进行排序。那已经很好用了。
下一个排序:无论哪个部门或姓氏,3位特定的员工都必须排在列表顶部。我在后端插入了另一个输入字段“ position”。这是一个整数字段,后端的默认数字始终为0。
这就是我将其插入ext_tables.sql中的方式:
position int(11) DEFAULT '' NOT NULL,
因此,如果我将员工的值1放在第一个职位上,并希望在职位值之后进行排序,那么它将被放在列表的末尾,因为所有其他记录都为“ 0”,并且该记录早于“ 1”。 还有其他关于排序的建议吗?
这是我在TCA中的代码:
protected $defaultOrderings = array(
'position' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_ASCENDING,
'section.uid' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_ASCENDING,
'lastname' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_ASCENDING
);
另一个问题是:并非所有员工都分配有部门,所以没有员工的部门会首先出现。但是我希望他们最后出现。
是否可以将具有特定值(在这种情况下没有值)的记录放在列表的末尾?
感谢您的帮助!