解決了我自己的問題。 ajax問題是由於我調整了(打破)了我的urlManager規則。我更改了原始規則以適應表上的非數字主鍵。例如,要觀察病人的網址應該https://web/patients/view/ABC_1234代替https://web/patients/view/1234
我傾向於使用現有的我的客戶數據庫架構設置現在的樣子,他們正在使用一個非數字的主鍵在可能和DB模式。我想繼續這個由於某些原因,所以我不得不編輯url params \ d只匹配數字。不幸的是,將它改爲\ w也匹配了一些Ajax請求,並且破壞了整個事情。
Yii原始規則。工作正常,但對於字母數字的主鍵不起作用:
'rules'=>array(
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
首先,我把它改成下面,處理字母數字外鍵,但是這打破了一些Ajax:
'rules'=>array(
'<controller:\w+>/<action:\w+>/<id:\w+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
'/gii'=>'/gii/default/login',
),
最後到達以下,這使得AJAX模塊正常運行,並處理我的非數字鍵:
'rules'=>array(
'/libraries/<action:\w+>/<id:\w+>'=>'/libraries/<action>',
'/patients/<action:\w+>/<id:\w+>'=>'/patients/<action>',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
我最終明確設置規則只爲需要它的控制器。他們大多數使用整數主鍵
希望這可以幫助別人。我是Yii的新手,當我改變規則時,並沒有完全理解Yii中的規則和ajax系統。
乾杯
恭喜您!如果可以,請確保將您的答案標記爲「已接受」,以便其他人能夠從您的成功中學習。乾杯〜 – 2012-04-25 16:14:44
感謝您的提示。 – glyph 2012-04-26 14:29:05