Php YII新手问题

Php YII新手问题,php,yii,Php,Yii,我正在测试一个MVC框架,以便在我的项目中使用,我对YII没有什么问题 我已经使用GII创建了一个模型,我从java知道代码生成假设是一个助手,大多数情况下不应该被修改,因为您可能希望在将来重新生成,假设在这里如何工作 我已经从模型中创建了一个CRUD,它为它提供了一个很好的gui,我想为管理端保留gui,但我想为用户端做一个不同的gui,这里的方法是什么 如果我决定在我的应用程序中使用某种ORM,这意味着我需要创建一个不同的模型,并且我看到当前模型继承了另一个模型。。。有问题吗 一般来说 哪一

我正在测试一个MVC框架,以便在我的项目中使用,我对YII没有什么问题

  • 我已经使用GII创建了一个模型,我从java知道代码生成假设是一个助手,大多数情况下不应该被修改,因为您可能希望在将来重新生成,假设在这里如何工作

  • 我已经从模型中创建了一个CRUD,它为它提供了一个很好的gui,我想为管理端保留gui,但我想为用户端做一个不同的gui,这里的方法是什么

  • 如果我决定在我的应用程序中使用某种ORM,这意味着我需要创建一个不同的模型,并且我看到当前模型继承了另一个模型。。。有问题吗

    一般来说

  • 哪一个在负载方面更快,CI?还是YII

  • 如果我错了,请纠正我,但MVC体系结构并没有真正为您提供一种像java一样的OOP方式。接口、继承和多态性,这是快速构建一个好应用程序的好方法,仅此而已。我这么说是因为您的控制器和模型已经继承了一些类

  • 谢谢你,通常一代又一代的模型都能正常工作,而且大多数时候不需要做任何改变。如果您在数据库中添加了一个字段,并且需要重新生成它,那么当您这样做时,gii中就有了新的代码,因此您可以复制/粘贴。通常您不需要这样做,当我向数据库添加字段时,我会“手动”将这些字段添加到模型中。很简单,很快,相信我

    2) 使用模板。在布局视图中创建一个新模板,并使用$this->layout='//my//layout'将其分配给前端的控制器

    3) Yii AR的实施对我来说很难。无法回答此问题,但您不应该有任何问题

    4) 取决于您运行的应用程序类型。我曾与CI和Yii合作,我更喜欢Yii,因为开发时间和速度


    5) 你说得对。

    谢谢,关于2。我也需要一个不同的控制器?因为使用生成的crud,所以删除只针对登录用户。我想这个登录需要用我自己的逻辑来替换,对吗?不,你不需要。在component文件夹中有基本控制器,它有一个名为layout的公共变量。您只需在所需的每个控制器的操作中重写该变量。可以在同一控制器中使用所需的布局数。只要创建布局并在控制器的ActionsOrry中分配该布局,我就忘记了删除问题。您的控制器中有一个accesRules方法,用于定义哪个用户有权访问哪个操作。您可以覆盖、自定义或构建自己的。对于简单访问系统,默认的accessRules和登录行为是“如果我错了,请纠正我的错误”,但OOP Java在无状态环境中的编程能力似乎很差。:)