松饼 / 有序
CakePHP的默认排序(行为)
3.0.0
2023-09-27 18:55 UTC
Requires
- cakephp/orm: ^5.0
Requires (Dev)
- cakephp/cakephp: ^5.0
- phpunit/phpunit: ^10.1
This package is auto-updated.
Last update: 2024-08-27 20:57:34 UTC
README
允许设置您表的单例排序。
安装
使用Composer
composer require muffin/orderly
然后使用控制台命令加载插件
bin/cake plugin load Muffin/Orderly
功能
有序允许您为表的SELECT
查询设置默认的ORDER
子句。
用法
以下是您可以为表添加有序行为的示例
// By default orders by display field of table. $this->addBehavior('Muffin/Orderly.Orderly'); // Default ordering using specified field. $this->addBehavior('Muffin/Orderly.Orderly', ['order' => $this->aliasField('field_name')]);
对于order
键的值可以是任何有效的值,这取决于\Cake\ORM\Query::orderBy()
。默认排序子句将仅应用于主查询,并且当查询中尚未设置自定义排序子句时。
您还可以使用callback
选项配置行为以根据所需的条件应用默认排序。如果回调返回true
,则将应用排序。
$this->addBehavior('Muffin/Orderly.Orderly', [ 'order' => ['Alias.field_name' => 'DESC'], 'callback' => function (\Cake\ORM\Query $query, \ArrayObject $options, bool $primary) { //return a boolean } ]);
行为还可以配置为具有多个排序,这些排序基于其各自回调的返回值应用。
$this->addBehavior('Muffin/Orderly.Orderly', [ [ 'order' => ['Alias.field_name' => 'DESC'], 'callback' => function (\Cake\ORM\Query $query, \ArrayObject $options, bool $primary) { //return a boolean } ], [ 'order' => ['Alias.another_field'], 'callback' => function (\Cake\ORM\Query $query, \ArrayObject $options, bool $primary) { //return a boolean } ], ]);
补丁和功能
- 分支
- 修改、修复
- 测试 - 这很重要,所以它不会意外地损坏
- 提交 - 不要修改许可、todo、版本等。(如果您更改了任何内容,请将它们提升到自己的提交中,这样我可以在拉取时忽略它们)
- 拉取请求 - 主题分支的加分项
为确保您的PR(拉取请求)被考虑,您必须遵循CakePHP编码标准。
错误和反馈
http://github.com/usemuffin/orderly/issues
许可
版权所有 (c) 2015-现在,Use Muffin 并许可在MIT许可证下。