1

我有一堂課Widgets。小部件由Doohickies組成。我永遠不會需要通過url直接訪問Doohickies - 它們本質上是一個私人類,只能由Widgets使用。你在哪裏把你的代碼定義爲Doohicky類?在/app/controllers/doohicky.php?在app/controllers/widget.php?別的地方?顯然,前者看起來更清潔,但對於我如何讓Widget可以使用Doohicky類,這一點並不明顯。你在codeigniter中放置了哪些非控制器類?

回答

1

聽起來像你的WidgetsDoohickies可能是ModelsMVC architecture

在這種情況下,你的路徑將是:

app/models/widget.php 
app/models/doohickies.php 
+0

嗯......現在我有第二個想法有關不需要Doohicky是控制器 - 我需要他們的兩種觀點 - 一個用於輸出,一個用於編輯表單。我總是不願意爲一行html創建一個視圖文件。我寧願把它放在模型的某種方法中。但後來我覺得不純。 – sprugman 2010-05-25 17:45:06

+0

控制器和模型都不應該包含單個HTML標記。只有你的觀點應該知道如何展示你的模型。 – Dolph 2010-05-25 18:37:01

+0

如果你不想doohickies是一個視圖,然後使用一個簡單的助手,如果這還不夠,那麼一個圖書館。 – 2010-05-25 19:11:38

0

我看到這個問題已經被回答,但也有一些事情要忍受它擴大。

您可以將小工具和doohickies放在libraries文件夾中,如果他們在那裏做工作而不是提供數據服務。另外,請看看HMVC,它主張您可以使用小型應用程序來管理網站的各個部分(例如,消息面板,搜索框/結果,doohickies ...)。這使您可以擁有專門用於其窗口小部件控制器的較小視圖部分;然後主控制器調用小部件,但不需要知道它們是如何產生的。

http://codeigniter.com/wiki/Modular_Extensions_-_HMVC/