Yii,我需要帮助为模块创建CRUD

时间:2015-05-28 09:51:15

标签: php yii module

我已经在Gii中尝试了这个,我的模块使用自己的db

  crud in Gii 当我预览时,我得到CException Property" GiiModule.db"未定义。

主应用程序配置 ../ config / main.php ,我包含了我的模块及其数据库连接

modules=>(
     'booksImported'=>array(
     'db'=>array(
     'connectionString'=>'mysql:host=localhost;dbname=dbimports',
     'username' => 'root',
     'password' => 'unl0ck',
     'class'=>'CDbConnection'
        )
  )


我的模块 .. protected \ modules \ booksImported \ BooksImportedModule.php

class BooksImportedModule extends CWebModule
 {
   public $db
   public function init()
   ...
}

我的模型 ... \ protected \ modules \ booksImported \ models \ Importedbooks.php

class Importedbooks extends CActiveRecord
 {
   ...
   public function getDbConnection()
   {
    $db = Yii::app()->controller->module->db;  
    return Yii::createComponent($db);
   }
 }

我已经设法为使用与主应用程序相同的数据库的模块创建一个CRUD,我正在努力解决这个问题。请帮忙

2 个答案:

答案 0 :(得分:0)

试试这个......

在yii中创建curd操作的步骤

1)首先你需要创建模型生成

单击模型生成器并将表名放在表名文本框中,并在下面的文本框中加载模型ID。复制。复制该模型ID并单击以下按钮首先预览并生成。

2)其次你需要创建curd generate     单击curd生成器并在模型名称文本框中粘贴模型ID,然后加载控制器ID并单击以下按钮,首先预览并生成。

现在运行以下网址:www.yourserver.com/index.php?r=controllername/create

答案 1 :(得分:0)

只需在getDbConnection函数中返回db

class Importedbooks extends CActiveRecord
{
    ...
    public function getDbConnection()
    {
        return Yii::app()->controller->module->db;
    }
}

我希望这能解决你的错误。