【问题标题】:Yii Activerecord without yii没有 yii 的 Yii Activerecord
【发布时间】:2014-12-16 09:27:27
【问题描述】:
我可以在没有 Yii 的情况下使用 Yii 的 Activerecord(模型)类吗?
看起来它有很多依赖项。我想在自己的项目中使用 Yii 的 ORM 和 Validation 机制。
【问题讨论】:
标签:
php
activerecord
yii
yii2
【解决方案2】:
如果你不这样做,我会说得更好,并通过借鉴 Yii 的想法来编写自己的东西,或者最好使用 Yii 本身,因为 CActiverecord 是 Yii 的核心部分,扩展 CModel 和 CComponent 如果你尝试从 Yii 中提取它,最后你会发现你几乎复制了所有内容。
【解决方案3】:
您的问题似乎无法回答。如果不使用整个框架,就无法从 Yii 中提取 PHP 类。 Symphony 等框架为您提供了一些您可以使用但不需要使用整个框架的组件。
PHP上有一个项目ORM,我没用过,不过大家可以做个体验...
http://www.phpactiverecord.org/
希望对你有帮助,抱抱。
【解决方案5】:
好吧,你可以提取它,我建议你从 Yii2 中提取它(这会更容易,因为它只需要一个容器来保存组件实例)。 Yii 是一个非常轻量级的模块化框架,你可以只加载基础组件,那么为什么不加载整个东西呢?但是,如果您只想使用带有自己路由的 AR,请导入 Yii 自动加载器,然后尝试使用模型。我希望它能够工作。
但是,例如,您将需要整个单独的应用程序来生成带有 gii 的模型。
【解决方案7】:
如果没有整个框架,您将无法真正使用 ActiveRecord 类。
ActiveRecord 不是一个独立的类,它严重依赖于框架的其他组件,例如数据库、缓存、架构等...
提取过程看起来更像是尝试重新实现类运行所需的框架组件。
如果你对 Yii 框架的 ORM 和验证机制感兴趣,相信你应该深入挖掘 yii 的核心,创建自己的“ActiveRecord”类来实现 ORM + 验证。
希望这能回答你的问题。