justinatack / deleteable
Requires
This package is not auto-updated.
Last update: 2022-02-01 12:43:28 UTC
README
Deleteable 提供了一种将数据库记录标记为可删除或不可删除的方法。我创建了这个 CakePHP Behavior,以满足在数据库中设置一个 tinyint(1) 的 "delete" 字段并将它设置为 true 或 false (0 或 1) 的需求。插件是灵活的,你可以设置自己的字段名,只要它存储布尔值即可。你也可以指定阻止或允许删除的值。因此,你可以让 DeleteableBehavior 在为 true 时工作,在为 false 时不工作(默认行为为 false)。你可能想在将 Deletable 字段命名为 "locked" 的时候这么做,因此你可能想让 "locked" 字段设置为 1(或 true),换句话说,"locked" 记录不能被删除,因为它们是 "locked" = true。
需求
主分支有以下需求
- CakePHP 2.2.0 或更高版本。
- PHP 5.3.0 或更高版本。
安装
[使用 Composer]
从你的命令行输入
composer require justinatack/deleteable="*"
或在你的项目的 composer.json
中添加插件 - 例如
{ "require": { "justinatack/deleteable": "*" } }
因为这个插件在其自己的 composer.json
中设置了类型 cakephp-plugin
,所以 Composer 知道在 /Plugin
目录中安装它,而不是在通常的 vendors 文件中。建议你将 /Plugin/Deleteable
添加到你的 .gitignore 文件中。(为什么?阅读这个。)
如果你只想在开发环境中包含 Deleteable,请考虑使用 "require-dev"。
[手动]
- 下载 Deleteable 存档。
- 解压下载。
- 将生成的文件夹重命名为
Deleteable
。 - 然后将此文件夹复制到
app/Plugin/
。
[GIT 子模块]
在你的应用目录中输入
git submodule add git://github.com/justinatack/deleteable.git Plugin/Deleteable git submodule init git submodule update
[GIT 克隆]
在你的插件目录中输入
git clone git://github.com/justinatack/deleteable.git Deleteable
启用插件
- 在 2.x 版本中,你需要在
app/Config/bootstrap.php
文件中启用插件。如果你已经使用CakePlugin::loadAll();
,则以下内容不是必需的。
CakePlugin::load('Deleteable');
- 在
app/Model/AppModel.php
中包含 Deleteable 行为。
class AppModel extends Model { public $actsAs = array( 'Deleteable.Deleteable', array( 'field' => 'delete', 'boolean' => false ) ); }
- 将
field
设置为你希望 DeleteableBehavior 检查的数据库字段名称。默认字段设置为 "delete"。确保你在 MySQL 中创建了一个 TINYINT(1) 类型的字段。 - 将 'boolean' 设置为 false 以实现默认行为,或使用 true 来反转行为。
- 默认情况下,布尔值 '0' 将阻止记录被删除。布尔值 '1' 将允许记录被删除。将 'boolean' 设置为 'true' 来反转此行为。
报告问题
如果你遇到 Deleteable 的问题,请在 GitHub 上打开一个问题。
贡献
如果您想为Deleteable项目做出贡献,请查看路线图以了解任何计划中的新功能。您可以分支项目,添加功能,并提交拉取请求或问题。
版本
Deleteable目前只有一个发布版本。请随意提交拉取请求以添加或改进代码库。
- '0.0.1' 是一个工作补丁,代码库可能会发生变化。
许可证
MIT 许可证 (MIT)
版权所有 (c) 2015 Justin Atack
以下条件之下,任何人可以免费获得本软件及其相关文档副本(以下简称“软件”),用于不受限制地处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,并允许向软件提供者提供软件的人进行此类操作:
上述版权声明和本许可声明应包含在软件的任何副本或主要部分中。
软件按“原样”提供,不提供任何形式的保证,无论是明示的、暗示的,还是关于适销性、特定用途适用性或非侵权的保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任负责,无论是在合同行为、侵权行为或其他行为中产生的,也不论是由于软件或软件的使用或其他操作而引起的。