松饼/有序

CakePHP的默认排序(行为)

安装: 112 683

依赖: 1

建议者: 0

安全: 0

星标: 22

关注者: 7

分支: 5

类型:cakephp-plugin

3.0.0 2023-09-27 18:55 UTC

This package is auto-updated.

Last update: 2024-08-27 20:57:34 UTC


README

Build Status Coverage Total Downloads License

允许设置您表的单例排序。

安装

使用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许可证下。