cnizzardini / cakephp-yummy
为 CakePHP 提供的 Yummy 插件,包括直观的搜索、ACL 和 bake 主题
Requires
- php: >=7.2
- cakephp/cakephp: >=3.6.0 <=3.9.0
Requires (Dev)
- phpunit/phpunit: 6.0.*
README
这是一个令人愉悦的、美味的 CakePHP 3 项目插件,包括基于组的访问控制列表(ACL)、具有直观用户界面的搜索组件和 Bootstrap 3 Bake 主题。这些组件可以单独使用。
演示 & 文档
支持版本
注意,单元测试在 3.5 及以下版本中失败。在 CakePHP 4.0.0-beta3
上运行了单元测试,结果失败。
功能
YummySearch
一个搜索组件,旨在与 CakePHP 的分页组件和 Cake\ORM\Query 一起使用。它支持通过直观的用户界面在三个简单步骤中搜索基础模型和其他关联,如 HasOne、BelongsTo 和 HasMany。
// Step 1. Basic Controller Usage: $query = $this->ModelName->find(); $this->loadComponent('Yummy.YummySearch',[ 'query' => $query, 'allow' => [ 'Table.column' => ['name' => 'Column Name'], ] ]); $results = $this->paginate($this->YummySearch->search($query)); // Step 2. Basic View Usage: $this->helpers()->load('Yummy.YummySearch'); echo $this->YummySearch->basicForm(); // Step 3. Include agnostic JavaScript <script src="/yummy/js/yummy-search.js"></script>
查看 文档 了解高级使用和自定义。
YummyAcl
一个组件,与 Auth 一起使用,为您的管理门户添加基于组的访问控制。
// Basic Usage $this->loadComponent('Yummy.YummyAcl',[ 'group' => $this->Auth->user('group'), ]); // Define ACLs (you can also define ACLs in a single config file) $this->YummyAcl->actions([ 'login' => '*', // allow all 'view' => ['Admin','Manager'], // allow Admin + Manager 'edit' => ['Admin'], // allow Admin ]);
查看 文档 了解高级使用和自定义。
YummyBake
一系列适用于管理门户的 Bootstrap 管理主题 (演示)
bin/cake bake template <ControllerName> -t Yummy
安装
您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。
安装 composer 包的推荐方法是
composer require cnizzardini/cakephp-yummy
在 config/bootstrap.php
中加载插件
Plugin::load('Yummy', ['bootstrap' => false, 'routes' => true]);
在 CakePHP 的新版本中,通过您的 src/Application.php
文件加载插件。
文档
查看 维基。
您还可以在 github 上查看演示项目的源代码
https://github.com/cnizzardini/cakephp-yummy-demo
单元测试
vendor/bin/phpunit
开发者
分支并发送拉取请求。您可以将 Yummy 作为本地源包含在 Cake 项目中,以便更容易地开发,请按照以下步骤操作
-
从您的
composer.json
中删除cnizzardini\cakephp-yummy
-
将路径存储库添加到您的
composer.json
"repositories": [
{
"type": "path",
"url": "/absolute/local-path-to/cakephp-yummy",
"options": {
"symlink": true
}
}
]
- 运行
composer require cnizzardini/cakephp-yummy @dev
完成操作后,撤销这些步骤。有关从路径加载的完整 composer 文档,请参阅此处: https://getcomposer.org.cn/doc/05-repositories.md#path