2015-05-28 73 views
0

我在GII已经尝试过这种创建CRUD,我模块使用自己的数据库

crud in Gii 当我预览我得到了CException 属性“GiiModule.db”没有定义。

主要应用程序配置../config/main.php,我包括我的模块和数据库连接Yii的,我需要帮助的模块

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


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

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

我的模型... \保护\模块\ booksImported \型号\ Importedbooks.php

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

我已成功创建模块CRUD使用同一数据库作为主要的应用程序,我是JS用这一个挣扎。请帮助

+0

你的问题是,你的模块,如果它使用不同的数据库创建问题的权利。 –

+0

请注意,因为我设法从它的数据库(从主数据库差异)创建模块内部,m js面临一个问题与该模块的CRUD问题 –

+0

我想你的getDbConnection()函数,你只需要返回数据库连接名称就像 返回Yii :: app() - > controller-> module-> db; –

回答

0

尝试......

步骤来创建警予

1凝乳操作)首先你需要创建模型生成

点击模式发生器和表名文本框中把表名并在下面的文本框中加载模型ID。 Copy.Copy该模型ID并单击下面的按钮第一次预览并生成。

2)你需要创建凝乳产生 点击凝乳发生器并粘贴模型名称文本框中的模型ID,它加载控制器ID并单击下面的按钮第一次预览并生成。

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

+0

我knw如何创建主应用程序的CRUD,我的问题是创建它在一个模块,使用差异db..u js给hw做了一些步骤来创建一个CRUD,没有什么困难 –

0

只返回分贝getDbConnection功能

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

我希望这将解决您的错误。