2010-05-21 14 views
2

我做無法添加/更新用戶(雖然可以列出和刪除)

yiic shell "/path/to/my/app" 

model * 

crud users 

我不能添加或更新用戶。我可以列出它們,並刪除它們。我還以爲我應該看到主鍵。

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 (`user_id`) 
) ENGINE=InnoDB; 
+0

需要更多的信息:你得到的錯誤,框架版本等 – 2010-05-22 00:51:56

+0

無聲錯誤,無論昨天最新下載 – 2010-05-22 03:00:47

+2

在你的index.php中啓用error_reporting – 2010-05-22 20:41:46

回答

2

可能的原因可能是您在config/main.php中提供的DB用戶名/密碼無權訪問修改數據庫。只是猜測,發佈更多關於這個問題的細節,以更好地理解它。

0

補丁,以使非整數的主鍵

 
--- 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... 
    *  ), 
1

的問題而產生的功能loadModelappController.php

生成器創建功能loadModel這樣的:

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; 
} 

和正確loadModel功能如下:

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; 
} 

我希望能幫助更好地理解這個問題,並在包裝​​糾正他們不接觸產生的原始的,因爲它應該出現在YII更新自己的更正。

相關問題