alescx/cakephp-shim

一个 CakePHP 插件,用于在主要框架版本之间“适配”应用程序。

安装次数: 10

依赖者: 1

建议者: 0

安全性: 0

星标: 0

关注者: 2

分支: 11

类型:cakephp-plugin

1.4.2 2017-02-19 23:57 UTC

README

Build Status Coverage Status Latest Stable Version Minimum PHP Version License Total Downloads Coding Standards

Shim 插件用于在 CakePHP 的主要版本之间“适配”功能。它还提供了一些小型的应用程序特定修复。

此分支用于在 3.x 中适配 2.x

它为 3.x 中 2.x 的功能提供兼容性包装器访问。

这在升级大型应用程序到下一个主要框架版本时非常有用。需要调整大量代码,使用此 Shim 插件则可以减少许多需要修改的行。特别是 ORM 层,需要大量重构,才能使功能再次正常工作。

此插件需要 CakePHP 3.0+。

安装

请参阅 SETUP.md

用法

请参阅 文档

2.x 和 3.x 之间所有适配的全面概述可以在 Wiki 中找到。

主要适配

  • 为更好的数据一致性提供可空行为。
  • 支持一级 Table::find('first')
  • 支持一级 Table::find('count')
  • 支持 Table::field()fieldByConditions() 别名以进行迁移。
  • 仍然支持模型属性 $primaryKey$displayField$order$validate$actsAs 以及所有关系($belongsTo$hasMany、...),因为手动调整这些属性将非常耗时。
  • 包含 Session 组件,作为请求会话对象的兼容性包装器(也许还会是 Session 助手,如果该助手在 3.x 中被弃用)。
  • 如果表中存在 createdmodified 字段,则自动添加 Timestamp 行为。

有用的链接

在计划升级时,您应该查看 2.x 的升级插件3.x 的升级应用程序。它们都扩展了核心插件,并包含大量关于如何使代码与框架当前方向保持一致的想法,以减少长期摩擦。