2010-01-15 19 views
1

我有Zend_Form生成的一種形式,我想建立一個路由,提交,以便代替用戶沒有看到他的URL更改或看到URL變化一個複雜的GET字符串,它會改變以反映過濾器。Zend_Form的過濾器重寫或路線 - 我想要一個可讀URL

BAD: /產品

BAD: /產品顏色=白色&大小=大

GOOD: /產品/白色/大

GOOD: /產品/顏色/白/尺寸/大

有沒有辦法做到這一點?

+0

請注意,'/產品/顏色/白/尺寸/ large'與'/產品/大小/大/顏色/白色/'將使谷歌憤怒的,因爲它是重複的內容(在違背PARAMS是** DO不要**做到這一點) – 2011-04-01 00:18:24

回答

0

不直接通過Zend_Form的,因爲在端部Zend_Form的繪製一個HTML表格,瀏覽器發送它在一個URL形式進行編碼。

你需要做的是趕上通過Javascript提交事件和手動創建你想要的網址,並使用window.location的轉移形式。

+0

不要忘了故障轉移到如果JavaScript在用戶的瀏覽器禁用「壞」的模式。 – 2010-01-16 18:38:02

+0

在這種情況下,它會以url編碼參數的形式提交,而Zend可以很好地與這些參數一起工作。 – Chris 2010-01-19 06:05:38