在Yii中创建新模型而不使用Gii

时间:2013-04-30 08:44:57

标签: yii gii

我是Yii的新手,正在接管一个相当完整的项目。在所有书籍和网络资源中,它仅讨论使用Gii工具添加新模型/控制器等。我查看了这个项目的config / main.php文件,并且已经删除了Gii模块,并且没有index.php页面供我简单地重新添加到。该项目已在服务器上运行。

如何向网站添加新模型?我已经尝试复制现有模型并创建一个新的数据库表,但我似乎无法从应用程序中的任何位置访问它。我是否还需要在框架中编辑某个文件以添加对此模型的新引用?

或者我是否必须创建站点的本地开发环境副本并在那里使用gii,然后将新文件(可能不仅仅是模型文件,否则有什么区别?)添加到服务器。

2 个答案:

答案 0 :(得分:2)

Gii模型生成器只需在Model文件夹中创建文件,因此您只需要复制其中一个并更改所有引用。

如果你在该文件夹中创建了一些不同于其他模型的类,那么它将起作用,因为自动加载器

可能你只是忘了改变一些信息。检查文件名。它必须与类名完全相同。例如,如果您的模型类名称为用户,则您的文件必须为 Users.php

答案 1 :(得分:0)

听起来您正试图在实际生产环境中修改生产代码。当你做一些破坏网站的事情时会发生什么?该网站可以在多长时间内离线,或者工作不正常?根据我的经验,新开发应该在开发环境中完成,然后升级到生产环境。否则,您将被迫在实际生产环境中测试您的更改,这确实是一件危险的事情。

鉴于您是Yii的新手,可能性是您无法在第一时间编写无错误的代码。

最好的办法是创建一个镜像生产的开发环境,并在那里安装Gii。然后,您可以使用Gii创建所需的所有模型和控制器,测试更改,最后促进对生产环境的更改。这确实是一个最佳实践问题。您不希望使用未经测试的代码更改实时代码。