2012-08-15 71 views
0

我想知道是否可以通過單擊一個按鈕發佈到兩個不同的網址? 我想要完成的是爲我的朋友製作一個生日網站。人們可以到現場並寫一些關於他的信息。爲了保持組織性,我製作了兩個模型,用戶和消息。現在,我試圖完成如果能夠提供一個採用用戶數據(名稱和電子郵件)和消息(描述)並更新兩個表格的單一表格。提前致謝。CakePHP,只需點擊一下即可發佈到兩個網址

我也願意從javascript做東西!但是我沒有研究過任何JavaScript,所以如果可以使用JavaScript,請提供清晰的說明。謝謝!

+0

爲什麼不從一個控制器更新兩個模型? – Johni 2012-08-15 07:00:53

+0

我還處於學習階段,不知道它是否可能。我應該做一個新的控制器,比如說處理這個工作的FormsController嗎? – Shobhit 2012-08-15 07:02:21

+1

是的。模型獨立於控制器。因爲我使用過Cake,所以我覺得他們的名字意味着每個控制器都屬於一個模型。但是,您也可以在控制器中使用其他模型。 – Johni 2012-08-15 07:07:30

回答

4

您可以在其他控制器只是使用模型,定義它的控制器uses陣列狀

class controller extends AppController { 

    public $uses = array('Model1', 'Model2'); 

    public function doSomething() { 

     debug($this->Model1); 
     debug($this->Model2); 

    } 

}

或者,如果模型是相關的,最好是採取通過關係就像

$this->Model1->Model2->save(); 

您應該閱讀文檔model asociations以瞭解基本模型的工作原理。

要回答你的問題如何調用另一個網址有requestAction,但請謹慎使用它,因爲它需要通過bootsrap過程完成,所以速度很慢。

1

使用一個單一的形式,兩種型號的數據,並使用$this->User->saveAssociated($this->request->data)

它會一個炮打響,不需要2次的提交節省用戶和消息數據。

相關問題