Попытка создать новое действие в бэкэнд-модуле: «Действие» module / show «не существует». - PullRequest
0 голосов
/ 07 декабря 2010

Я создал новое действие с именем executeDetagli () в backend / modules / ordini / actions / actions.class.php.

Когда я пытаюсь перейти в "backend_dev.php / ordini / detagli", это выдает мне эту ошибку:

404 | Не найден | sfError404Exception Действие "ордини / шоу" не существует. трассировка стека

* at ()
  in SF_ROOT_DIR/lib/vendor/symfony/lib/controller/sfController.class.php

строка 192 ... 189. $ this-> dispatcher-> notify (new sfEvent ($ this, 'application.log', массив (sprintf ('Действие "% s /% s" не существовать ', $ moduleName, $ actionName)))); 190.} 191.

         192.       throw new sfError404Exception(sprintf('Action

"% s /% s" не существует. ', $ ModuleName, $ ActionName)); 193.} 194.

         195.     // create an instance of the action
* at sfController->forward('ordini',

'показать') в SF_ROOT_DIR / lib / vendor / symfony / lib / controller / sfFrontWebController.class.php строка 48 ... 45.} 46. ​​

          47.       // make the first request
          48.       $this->forward($moduleName,

$ ActionName); 49.} 50. catch (sfException $ e) 51. { * в sfFrontWebController-> dispatch () в SF_ROOT_DIR / lib / vendor / symfony / lib / util / sfContext.class.php линия 170 ... 167. * / 168. Общественная функция рассылки () 169. { 170. $ this-> getController () -> dispatch (); 171.} 172.

         173.   /**
* at sfContext->dispatch()
  in SF_ROOT_DIR/web/backend_dev.php line

13 ... 10. require_once (dirname ( FILE ). '/ .. / config / ProjectConfiguration.class.php'); 11.

          12. $configuration = ProjectConfiguration::getApplicationConfiguration('backend',

'dev', верно); 13. sfContext :: createInstance ($ configuration) -> dispatch (); 14.

У меня есть это в routing.yml:

shop_order:
  class: sfPropelRouteCollection
  options:
    model:                ShopOrder
    module:               ordini
    prefix_path:          /ordini
    column:               orders_id
    with_wildcard_routes: true


default:
  url:   /:module/:action/*

Есть идеи?

sf 1.4 / ходовой

1036 * Javi *

1 Ответ

0 голосов
/ 07 декабря 2010

Попробуйте:

  • symfony cc
  • убедитесь, что представление ... / modules / ordini / templates / detagliSuccess.php существует

Ответ на ваш комментарий: в вашем routing.yml попробуйте добавить правило маршрутизации, подобное следующему: непосредственно перед последним правилом, чтобы соответствовать *Паттерн 1016 * без косой черты (так как я думаю, что действие ordini/detagli не будет соответствовать первому правилу):

default_noslash:
  url:   /:module/:action

Кроме того, существует множество решений, которые вы можете получить с помощью несколькихПоиск в Google:

http://blog.phpleo.com/2008/01/27/redireccion-301-en-symfony-filtros-vs-htaccess/

http://www.decentmind.com/2010/07/symfony-without-a-slash-at-the-tail/

и т. Д.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...