情況是這樣的。可能使codeigniter與另一個框架一起工作?
我的客戶(也是程序員)要我開發一個帶有很多函數的地址簿(帶有mysql數據庫)。那麼他可以與我爲他提供的一些課堂方法進行互動。有點像一個API。
情況是,地址簿應用程序變得越來越大,我覺得它更好地使用CodeIgniter與MVC編碼。
我不知道我是否可以使用codeigniter,然後以某種方式給他訪問控制器方法。
例如。在控制器中,您可以使用Web瀏覽器調用某些功能。
public function create_contact($information) {..}
public function delete_contact($id) {..}
public function get_contact($id) {..}
但是,這些只能從網絡瀏覽器調用。我如何讓我的客戶端可以像API一樣訪問這些功能?
然後在自己的應用程序,他可以使用:
$result = $address_book->create_contact($information);
if($result) {
echo "Success";
}
$contact = $address_book->get_contact($id);
這樣,我的控制器方法處理進出與模型。將沒有意見,因爲我只需要返回模型的數據/結果。他可以使用我的「API」功能。
這是可能的嗎?
因爲我只知道如何使用webbrowser訪問控制器方法。我想它不是一個讓他使用標題(位置)來訪問它們的選項。
所有的建議,使這成爲可能的,歡迎!甚至還有其他方法讓我使用CI來開發。或許有關於這種跨框架協作的最佳實踐?
謝謝
問題是應用程序正在處理數據庫,涉及到很多類。和配置文件。學說文件等,它發展到一個應用程序,而不僅僅是一個類,他可以包括一個使用。我更喜歡使用CI來開發它,然後以某種方式將它移植到他,以便他可以使用方法來處理地址簿中的聯繫人。在解決這個問題的方法中,我認爲控制器就像API方法一樣。但我不知道如何做到這一點,我的應用程序可以如何與他整合。我不認爲包括index.php會使一切爲他工作。想法? – 2010-04-22 19:55:10
無論底層機制如何,都應該與模型層中屬於完全分離,哪些不屬於模型層。數據庫操作絕對是模型層的一部分。不應將模型層的配置與控制器和視圖的配置混合使用。當模型層是真正的模型層時,只有引導程序文件可以讓其他開發人員使用它。 – erisco 2010-04-22 20:34:56
+1 erisco讓我感覺很聰明。在閱讀了MCV後,基於這個理念提出了我自己的系統,我注意到很多人以對我毫無意義的方式描述模型和控制器。我擔心我做錯了,但是你的描述讓我相信我是對的。謝謝,這一直困擾着我。 – 2010-04-23 02:03:04