詹姆斯·沃茨 / cake-factory
Cake 是一个 Cake Toolkit (CTK) 的工厂,为 CakePHP 的核心辅助函数提供可配置的对象
Requires
- php: >=5.3.0
- composer/installers: *
This package is not auto-updated.
Last update: 2024-09-23 15:25:43 UTC
README
Cake 是一个 CakePHP 插件,它为 Cake Toolkit (CTK) 提供了一个额外的工厂,为框架中可用的核心 Html 和 Form 辅助函数添加了可配置的对象。
核心辅助函数的面向对象接口的引入,允许进行更复杂的操作,例如添加子节点和绑定事件,同时提高视图层的整体抽象级别和关注点分离。
要求
- CakePHP 2+
- PHP 5.3+
- Cake Toolkit (https://github.com/jameswatts/cake-toolkit)
安装
要使用此插件,只需将其包含在您的应用程序的 "app/Plugin" 目录中,并在 "app/Config/bootstrap.php" 文件中加载它。
CakePlugin::load('CakeFactory');
如果您已经使用 CakePlugin::loadAll()
加载所有插件,则不需要上述代码。
实现
一旦插件可用,您就可以在您的 CTK 视图中使用它,或者使用与 Cake Toolkit 一起提供的 Factory 辅助函数。要在视图中包含 Cake 工厂,只需将工厂添加到您的 $factories 集合中,例如
public $factories = array('CakeFactory.Cake');
工厂现在可用,您可以在视图中调用它,并通过面向对象接口使用 Html 和 Form 辅助函数构建您的应用程序。
以下是一个使用 Html 辅助函数创建 链接 的简单示例
$this->Cake->Link(array( 'title' => __('Read more'), 'url' => array( 'controller' => 'Posts', 'action' => 'view', $postId ) ));
另一个示例,使用 Form 辅助函数创建一个带有 输入 的 表单,并额外将一个 事件 绑定到输入元素
// create a CakePHP form $form = $this->Cake->Form(array( 'model' => 'Example', 'options' => array( 'action' => 'add' ) )); // create a CakePHP input $input = $this->Cake->Input(array( 'field' => 'Example.column', 'options' => array( 'type' => 'text' ) )); // bind an event to the input $input->bind('keyup', $this->Js->Alert(array( 'code' => $this->Js->Element(array('node' => $input))->getValue() ))); // add the input to the form $form->add($input); // add the form to the view $this->add($form);
文档
Cake 工厂的设计旨在遵循 CakePHP 核心辅助函数中定义的现有方法和参数。这使得过渡到使用工厂变得容易,因为您已经熟悉预期的参数。每个辅助函数类的文档可以在此找到
- HtmlHelper: https://api.cakephp.com.cn/2.3/class-HtmlHelper.html
- FormHelper: https://api.cakephp.com.cn/2.3/class-FormHelper.html
与等效参数相比,参数名称有一些修改。这通常适用于由 2 个或更多单词组成的参数,例如 $fieldName 参数,它变为 field 参数。
支持
有关支持、错误和功能请求,请使用此存储库的 问题 部分。
贡献
如果您想向代码库贡献新功能、增强功能或错误修复,请按照以下步骤操作
- 如果您还没有,请创建一个 GitHub 账户
- 然后,将 Cake 工厂存储库 分支 到您的账户
- 在您分叉的仓库中从 develop 分支创建一个新的 分支
- 修改现有代码,或在您的分支中添加新代码,确保您遵循 CakePHP 编码规范
- 修改或添加 单元测试 以确认您代码的正确功能(需要 PHPUnit 3.5+)
- 考虑使用 CakePHP 代码检查器 来检查您代码的质量
- 准备好后,向主仓库提交一个 拉取请求
在合并任何代码之前,您对仓库的贡献可能会引起一些讨论,所以请准备好在需要时提供您贡献的反馈。
可以在这里找到 Cake 工厂的贡献者列表 这里。
许可证
版权所有 2013 James Watts(CakeDC)。保留所有权利。
在 MIT 许可证下授权。包含在此仓库中的源代码的再分发必须保留每个文件中的版权声明。
致谢
感谢 Larry Masters 和 所有 为 CakePHP 做出贡献的人,帮助使这个框架成为今天的模样。