2015-08-04 7 views
0

У меня проблема с моей маршрутизацией.Symfony: проблема с маршрутизацией add/{id}/edit

Когда я пытаюсь посетить domain.com/listing/add я получаю ошибку ниже

Parameter "id" for route "listing_edit" must match "[^/]++" ("" given) to generate a corresponding URL. 

Я понимаю, с маршрутом редактирования этого потребуется domain.com/listing/1/edit, но я думал, имея маршрут добавления/добавления выше маршрута редактирования, я все равно могу посетить domain.com/listing/add.

Что я делаю неправильно?

route.yml

listing_add: 
     pattern: listing/add 
     defaults: { _controller: Bundle:Listing:add } 
listing_edit: 
     pattern: listing/{id}/edit 
     defaults: { _controller: Bundle:Listing:edit} 
+0

Можете ли вы показать код, где используется название маршрута? (Внутри html или контроллера). Очевидно, вы используете имя маршрута 'listing_edit', где вместо этого следует использовать' listing_add'. – chayasan

+1

Возможно, вы пытаетесь создать ссылку редактирования без сохранения enity ... возможно, с isnew data – Matteo

+1

Спасибо @chayasan и @matteo. Я создавал маршрут редактирования в контроллере добавления с идентификатором 'id'. благодаря – user742736

ответ

0

Если вы используете прутик, вы должны использовать эти виды ссылок:

<a href="{{ path('listing_add') }}">YOUR LINK TO ADD</a>

<a href="{{ path('listing_edit',{'id':entity.id}) }}">YOUR LINK TO EDIT</a>

Смежные вопросы