松饼 / 多选
根据一组条件切换、选择或多选数据库字段
0.0.1
2015-11-27 09:44 UTC
Requires
- php: >=5.4.16
- cakephp/cakephp: ~3.0
Requires (Dev)
This package is auto-updated.
Last update: 2024-08-28 01:10:19 UTC
README
根据一组条件切换、选择或多选数据库字段
安装
使用Composer
composer require muffin/multiselect:1.0.x-dev
然后您需要加载插件。您可以使用以下shell命令
bin/cake plugin load Muffin/Multiselect
或通过手动添加以下语句到您的应用config/bootstrap.php
文件中
Plugin::load('Muffin/Multiselect');
用法
在一个播放列表中,一次只能播放一首歌。每当一首歌被标记为播放时,其他所有歌曲都被标记为未播放。为此,我们使用布尔字段playing
。
CREATE table songs(
id int(10) unsigned NOT NULL auto_increment,
title varchar(255) NOT NULL,
playing tinyint(1) NOT NULL,
);
在您的模型SongsTable.php
中加载行为
$this->addBehavior('Multiselect.Multiselect', ['playing']);
可以处理更复杂的使用场景,如下所示。对于同一作者,同一时间只能标记2篇文章为featured
。当第三篇文章被标记为特色时,3篇文章中的一篇会被取消特色。在这种情况下,按照最少观看次数和修改日期排序。
$this->addBehavior('Multiselect.Multiselect', [
'featured' => [
'state' => true,
'scope' => ['author_id'],
'limit' => 2,
'order' => [
'view_count' => 'ASC',
'modified' => 'ASC',
],
],
]);
配置
[字段名]
用作选择的字段的名称state
将活动字段标记为true
或false
scope
可以选择按此处定义的字段分组limit
最大选择元素数量order
超过限制时取消选择字段的顺序
补丁和功能
- 分支
- 修改、修复
- 测试 - 这很重要,所以不要无意中破坏它
- 提交 - 不要修改许可证、todo、版本等。(如果您做了修改,请将它们提升到自己的提交中,这样我可以在拉取时忽略它们)
- 拉取请求 - 主题分支的加分项
为了确保您的PR被考虑,您必须遵循CakePHP编码规范。
错误和反馈
http://github.com/usemuffin/multiselect/issues
许可证
版权所有(c)2015,Use Muffin,许可协议为MIT许可证。