Symfony изменить URL-адрес действия объекта - PullRequest
0 голосов
/ 13 декабря 2011

У меня есть объектное действие approve, и я хотел бы изменить его URL-адрес с /module/ListApprove/action?id=XXX на /module/:slug/approve. Я попытался добавить маршрут в routing.yml, но не помогло. Кроме того, в моем действии определено ecexuteApprove.

изменено routing.yml:

poster_approve:
  url: /poster/:slug/approve
  params: {module: poster, action: approve}

poster:
  class: sfDoctrineRouteCollection
  options:
    model:                Poster
    module:               poster
    prefix_path:          /poster
    column:               slug
    with_wildcard_routes: true

когда я вручную вызываю /poster/someslug/approve, все работает нормально. Но в интерфейсе списка администраторов в столбце действий URL для утверждения не /poster/someslug/approve, а /poster/ListApprove/action?id=12.

После этого я добавил параметр действия к своему generator.yml, например:

        object_actions:    
          _delete: 
            credentials: delete_poster
          approve:            
            credentials: approve_poster
            action:      approve

, но единственное изменение на этот раз, URL ссылки становится /poster/approve/action?id=12. Как мне это изменить?

1 Ответ

0 голосов
/ 13 декабря 2011

Как выглядит ваше действие routing.yml? Вы можете добавить что-то вроде:

list_approve:
  url:    /someModule/:slug/:id
  param:  { module: someModule, action: approve }

Пожалуйста, укажите , но не помогите , с какой проблемой вы столкнулись?

...