Routing Symfony路由问题-我做错了什么?

Routing Symfony路由问题-我做错了什么?,routing,symfony1,Routing,Symfony1,我正在学习Symfony,并且正在使用以下URI: url_for('newItem/show?id='.$item->getId().'&name='.$item->getName().'&summary='.$item->getSummary()) 使用下面的routing.yml item_show_user: url: /newItem/:name/:summary param: {module: newItem, action: show

我正在学习Symfony,并且正在使用以下URI:

url_for('newItem/show?id='.$item->getId().'&name='.$item->getName().'&summary='.$item->getSummary())
使用下面的routing.yml

item_show_user:
  url:   /newItem/:name/:summary
  param: {module: newItem, action: show} 

# default rules

homepage:
  url:   /
  param: { module: newItem, action: index }

default_index:
  url:   /:module
  param: { action: index }

default:
  url:   /:module/:action/*
根据URI的参数,它应该使用的路由是“item\u show\u user”,这是否正确?相反,我得到了一个404错误

奇怪的是,如果我将summary的所有实例都更改为model(数据库中的另一个列),那么路由就完全可以正常工作。这怎么可能

此外,当URL起作用时(例如使用模型),URL应显示为:

/newItem/Name/Model
相反,它显示为:

/newItem/Name/Model/?id=
你能帮我吗

item_show_user:
  url:   /newItem/:name/:summary/:id
  param: {module: newItem, action: show} 

如果您想使用item_show_user route,您需要将id参数放在路线上。

谢谢,我通过实验发现了这一点,但忘记返回并将其标记为已解决。