2012-02-07 65 views
1

我只是做我自己的MVC。但是,我遇到了一個問題。正如你以前所知道的那樣,如果有一個像「www.site.com/users/star」這樣的URL,那麼「users」被定義爲一個控制器,而「star」被定義爲一個MVC風格的方法。所以,我假設我想爲用戶創建一個配置文件頁面。我需要一個網址,例如「www.site.com/user/{username}」。在這種情況下,用戶名正在被評估爲一種方法,但它不能。這只是用戶的名字。我怎樣才能防止這種複雜性?我的MVC方法問題

這裏是我的bootstrap.php: http://tinypaste.com/75cd8487

在此先感謝..

+0

使用真正的MVC引擎。爲什麼給自己造成很大的麻煩?有這麼多免費的框架使用我無法想象爲什麼你想重新發明輪子。 – spinon 2012-02-07 20:06:52

+0

@spinon練習和/或體驗。您會驚訝地發現X-Framework的引導程序能夠以更快的速度獲得,並且可以立即通過解決方案來識別相同的問題。 – 2012-02-07 20:14:21

+0

在解析請求開始之前,路由器可能會用「user/view /」替換「user /」。這樣你的第二個參數可以是id而不是方法。這當然會將用戶控制器限制爲一種方法,除非您的路由非常複雜,因此您可能需要考慮使用完整路徑「user/view/id」。 – dqhendricks 2012-02-07 20:24:08

回答

-1

很多框架都有路線的概念。通過路由,URL不是控制器/操作的具體定義。您可以指定類似'users/*'的路線,並使其指向用戶控制器和查看操作。然後,由控制器來處理不同的參數。

0

您可以使用不同的URL:現在

www.site.com/user/view/{username} 

view是方法,這將得到通過了{username}參數。

+0

我會試試這個方法。謝謝!否則,我會像其他朋友所說的那樣創建一個路由器。 – 2012-02-07 21:11:30

0

nickb有權限,但是您可以創建一個重新路由機制,它將在後臺(無客戶端重定向)到控制器(用戶)方法(信息,服務器)重新路由這些請求(在控制器'用戶'中找不到操作方法)視圖等)。