Unable to add/update users (though can list and delete them)
I did
yiic shell "/path/to/my/app"
model *
crud users
I cannot add or update users. I can list them, and delete them. Also I thought I was supposed to see the primary keys.
CREATE TABLE IF NOT EXISTS `users` (
`user_id` int(11) NOT NULL auto_increment,
`user_username` varchar(25) collate latin1_general_ci NOT NULL,
`user_username_clean` varchar(25) collate latin1_general_ci NOT NULL,
`user_password` varchar(64) collate latin1_general_ci NOT NULL,
`user_register_time` int(11) NOT NULL,
`user_code` varchar(15) collate latin1_general_ci NOT NULL,
PRIMARY KEY 开发者_如何学Go (`user_id`)
) ENGINE=InnoDB;
Probable reason could be DB username/password which you have provided in config/main.php doesn't have access to modify database. Just making a guess, post more details about the issue to better understand it.
It looks like the suggestion about database permissions above was the answer, but just a friendly note: the newer versions of Yii have a new visual (GUI) CRUD generator called "Gii". Check out the instructions here, it's much nicer than yiic and may solve some problems creating CRUD code:
http://www.yiiframework.com/doc/guide/quickstart.first-app#generating-crud-code
The problem is while generating function loadModel
in appController.php
The generator creates the function loadModel
like this:
public function loadModel($id)
{
$model=App::model()->findByPk((int)$id); // <- Error Line
if($model===null)
throw new CHttpException(404,'The requested page does not exist.');
return $model;
}
And the correct loadModel
function is as follows:
public function loadModel($id)
{
$model=App::model()->findByPk($id); // <- Fixed Line
if($model===null)
throw new CHttpException(404,'The requested page does not exist.');
return $model;
}
I hope to have helped better understand the problem and correct them in the package without touching the Original of the generator, as it should appear in YII updates own correction.
Patch to enable non-integer primary keys
--- yii-1.1.5.r2654/framework/cli/views/webapp/protected/config/main.php 2010-11-14 20:35:42.000000000 +0000 +++ yii-1.1.5.r2654/framework/cli/views/webapp/protected/config/main.php 2010-12-09 16:59:01.783001000 +0000 @@ -42,4 +42,5 @@ '/'=>'/view', '//'=>'/', + '//'=>'/', '/'=>'/', ), --- yii-1.1.5.r2654/framework/gii/generators/crud/templates/default/controller.php 2010-11-14 20:35:45.000000000 +0000 +++ yii-1.1.5.r2654/framework/gii/generators/crud/templates/default/controller.php 2010-12-09 16:47:54.053001002 +0000 @@ -163,5 +163,5 @@ public function loadModel($id) { - $model=modelClass; ?>::model()->findByPk((int)$id); + $model=modelClass; ?>::model()->findByPk($id); if($model===null) throw new CHttpException(404,'The requested page does not exist.'); --- yii-1.1.5.r2654/framework/gii/GiiModule.php 2010-11-14 20:35:45.000000000 +0000 +++ yii-1.1.5.r2654/framework/gii/GiiModule.php 2010-12-09 16:49:22.183001002 +0000 @@ -53,4 +53,5 @@ * 'gii/'=>'gii/', * 'gii//'=>'gii//', + * '//'=>'/', * ...other rules... * ),
精彩评论