2013-04-23 31 views
0

我在architect.I有一個問題,我有兩個頁面順序和註冊,他們正在使用這些意見和控制器分開。單頁多個控制器的多視圖Yii PHP

1.registration(view),RegistrationForm(Form Model)和RegistrationConroller(Controller)。

2.order(view),OrderForm(Form Model)和OrderController(Controller)。

現在的問題是我有新的要求,即是在一個單一的用戶page.when同時顯示訂購和註冊視圖提交它將註冊用戶和下訂單確認之後。

此需求中的問題是哪個控制器將處理那裏的請求,因爲每個視圖(註冊和訂單)都有單獨的控制器。 現在我應該做一個新的控制器,然後它需要代碼重複。 請給我最好的方法。

回答

1

Yii有一個選項,您可以通過該選項導入/提供在其他控制器中定義的操作。

http://www.yiiframework.com/doc/api/1.1/CController#actions-detail

上面的鏈接詳細資料在你的控制器定義外部行爲的過程。

因此,本質上,您可以引用Order Controller中定義的動作而不復制代碼。

+0

所以你的意思是我創建了另一個控制器類,例如OrderRegistrationController擴展CCController並覆蓋操作方法,並在這裏定義兩個控制器所需操作的映射? – AsadYarKhan 2013-04-23 06:26:14

+0

如果上述內容是正確的,那麼當用戶點擊mergeviewpage提交按鈕時告訴我,用戶提交這兩個表單的操作是什麼?例如。 localhost/index.php?r = orderregistration/whataction ?? – AsadYarKhan 2013-04-23 06:29:52

+0

請回復預先致謝:) – AsadYarKhan 2013-04-23 06:30:18