Как я могу настроить все действия Catalyst в данном контроллере, используя Config :: General? - PullRequest
1 голос
/ 25 октября 2010

Я хочу настроить все действия в моем контроллере, используя файл конфигурации моего приложения.Согласно Catalyst :: Controller Я могу сделать это в самом контроллере:

__PACKAGE__->config(
    action => {
        '*' => { Chained => 'base', Args => 0  },
    },
 );

Итак, я попробовал это в моей конфигурации:

<controller Foo>
    <action "*">                                                                
        Chained base
        Args 0
    </action>
</controller>

Но я получаюэта ошибка при запуске:

Couldn't load class (MyApp) because: Action "*" is not available from 
controller MyApp::Controller::Foo at /usr/local/share/perl/5.10.1/Catalyst/
Controller.pm line 193

Она делает то же самое без кавычек вокруг звездочки.Как мне это сделать?

1 Ответ

3 голосов
/ 26 октября 2010

Это описано в Полное руководство по Catalyst

Получите загружаемый источник с этой страницы, разархивируйте его, перейдите в приложение DwarfChains в главе 7, затем добавьте следующее в dwarfchains.conf:

 <Controller People>
 <action get_ready>
  PathPart nama
 </action>
 </Controller>

 <Controller People::Info>
 <action get_info_ready>
  PathPart siapa
 </action >
 <action create>
  PathPart lagi
 </action >
 <action delete>
  PathPart mengusir
 </action >
 </Controller>

Это должно более или менее продемонстрировать, как переопределить диспетчеризацию конфигурацией.

...