具有翻译行为 i18n 的 Cakephp 3 分页器排序字段
Cakephp 3 paginator sort fields with translate behavior i18n
我有一个具有 Translate
行为的 Posts
table,我想在索引视图的 table 上按标题对其进行排序。我无法按已翻译的字段排序,因为该字段实际上并不存在于数据库中。它们存在于 i18n
table.
正如我上面所解释的,这不起作用:
$this->Paginator->sort('title');
$this->Paginator->sort('Posts_title_translation.content');
那么,我该怎么办?我错过了什么?
非常感谢!
一旦字段被列入白名单,第二个变体应该可以工作,这通常是关联用于排序所必需的:
$this->paginate = [
// ...
'sortWhitelist' => [
'Posts_title_translation.content',
// ...
]
];
请注意,有了白名单后,您还必须添加 Posts
table 中需要用于排序的所有其他字段!
另见 Cookbook > ... Components > Pagination > Control which Fields Used for Ordering
我有一个具有 Translate
行为的 Posts
table,我想在索引视图的 table 上按标题对其进行排序。我无法按已翻译的字段排序,因为该字段实际上并不存在于数据库中。它们存在于 i18n
table.
正如我上面所解释的,这不起作用:
$this->Paginator->sort('title');
$this->Paginator->sort('Posts_title_translation.content');
那么,我该怎么办?我错过了什么?
非常感谢!
一旦字段被列入白名单,第二个变体应该可以工作,这通常是关联用于排序所必需的:
$this->paginate = [
// ...
'sortWhitelist' => [
'Posts_title_translation.content',
// ...
]
];
请注意,有了白名单后,您还必须添加 Posts
table 中需要用于排序的所有其他字段!
另见 Cookbook > ... Components > Pagination > Control which Fields Used for Ordering