2009-09-03 198 views
0

我已經開始通過閱讀joobet-propel書籍學習symfony框架。我在URL路由章節,我嘗試了我的示例應用程序中的每個示例。但它給了我錯誤。 Compeletely我的問題:Url路由與symfony

的routing.yml文件的一小部分:

bookmark_deneme_user: 

url: /post/:title_slug/:id/:summary_slug 

class: sfPropelRoute 

options: { model: Bookmark, type: object } 

param: { module: post, action: show } 

requirements: 

id: \d+ 

sf_method: [get] 

我有標題,摘要,ID和URL的對象書籤,我想詳細顯示與一個書籤url title/id/summary,所以我寫了上面提到的yml,並在頁面的xxxSuccess.php URL中使用了「echo url_for('bookmark_deneme_user',$ bookmark)」,但是當我點擊URL來顯示書籤的詳細信息。它給了我這個錯誤:

404 | Not Found | sfError404Exception

Action "post/deneme" does not exist.

「deneme」選擇書籤的標題,爲什麼不使用id屬性。如何我可以解決這個問題?

+0

你能發佈完整的生成url嗎? – gpilotino

+0

您有書籤對象中的getTitleSlug和getSummarySlug方法嗎?因爲它們是您的路線規則所需要的,並且gpilotino聲明發布了一個生成的網址。 – deresh

回答

1

看起來你已經在你的yml中留下了默認路由 - 如果你將它放入,它需要低於你添加的路由,因爲symfony會使用匹配的第一條路由。

(默認路由是具有url /:module /:action的那個)