2015-10-26 114 views
1

我想了解URL映射如何工作。我已經瀏覽了很多頁面,但似乎無法將我想要做的事情包圍起來。Silverstripe URL映射

它非常簡單,我使用DataObjects作爲頁面方法,並且有成員擴展寫入成員類。我有典型的行爲,顯示,編輯,添加。

所以,如果我去www.mywebsite.com/members/show/1我可以看到第一個用戶。如果我將節目更改爲編輯,我可以編輯第一個用戶。現在,如果我去www.mywebsite.com/members/add,我可以創建一個新用戶。由於我在add方法中創建的功能,這是所有預期的工作。

我的問題是,當你去任何網站,你不會登錄到網站去成員/添加,你通過去website.com/Register或類似的東西註冊。從代碼管理的角度來看,我現在離開代碼要容易得多。我不想創建一個註冊頁面並將代碼移動到那裏,而是試圖找出是否可以訪問www.mywebsite.com/Register並將其加載www.mywebsite.com/members /加。我不是在討論一個會更新url的重定向鏈接,我希望用戶仍然可以在url中看到Register並且不會看到/ members/add。

反之亦然,如果用戶要去www.mywebsite.com/members/add我希望鏈接更新到註冊或說未找到頁面。

Silverstripe Framework有可能嗎?

我不是100%確定,但我相信這被稱爲URL掩蔽。

回答

1

這是非常有可能的,首先我建議你過目......

silverstripe-memberprofiles

...因爲即使你不」要使用現有的模塊,我敢肯定有將是有用的信息。有一個「純粹」路由(例如silverstripe no cms)導致「嵌套」路由的好例子 - 這是我想你所要求的,所以我強烈建議閱讀下面的幻燈片,然後創建待辦事項應用程序

silverstripe-framework-building-without-the-cms

todo app source

+0

我已經通過該模塊之前走了,我沒有選擇,因爲我學會讓自己更好地使用它。另一個問題是因爲該模塊非常龐大,發生了太多事情,需要花費數週時間才能找到我想要找的東西。是否有鏈接指導,你可以給我或你自己解釋我如何路由/掩蔽與銀線條工作? – Bojan

+0

我假設你說的是第一個鏈接,你是通過第二個/第三個鏈接來看的嗎?這顯示了一個簡單的待辦事項應用程序,但嵌套的路由邏輯。如果你只是想要路由的文檔... https://docs.silverstripe.org/en/3.2/developer_guides/controllers/routing/ – Barry

+0

嗨,第二個鏈接對我來說是封鎖的,因爲我現在在工作並且無法查看它,我今晚會過去。第三個鏈接被完全破壞,當我點擊它時不起作用。 – Bojan