2009-10-23 2 views
0

Catalyst::Controller::FormBuilder 모듈을 사용하여 Catalyst 응용 프로그램에서 양식을 처리하십시오. 기본 모듈의 최상위 수준입니다Catalyst :: Controller :: Formbuilder에서 form_path 구성하기

form_path => File::Spec->catfile($c->config->{home}, 'root', 'forms'),

하지만 내 응용 프로그램의 설정에 대한 호출() :

문서는이 같은 form_path을 설정할 수 있습니다 말한다. 따라서 $ c는 정의되지 않습니다. 그래서 나는 $ c-> config -> {home}이라고 부를 수 없다.

구성하는 적절한 방법은 무엇입니까 form_path주십시오.

+0

'AppName-> path_to (qw/root forms /)'? – jrockway

+0

고마워요 조나단, 좋은 대답입니다. Form_path => File :: Spec-> catfile (AppName-> path_to (qw'etc forms ')), 양식, 템플릿 및 설정을 루트 밖으로 이동했습니다. 예를 들어 http://example.com/forms/search/page.fb로 이동하면 템플릿 등의 사본을 얻을 수 있다는 것을 알았습니다. 나는 그걸 싫어해서 더 이상 뿌리에서 벗어나지 못하게했다. –

답변

0

__PACKAGE__->config 해시를 사용하여 응용 프로그램의 기본 모듈에서 이미 설정된 구성 값에 액세스 할 수 있어야합니다. 예 : __PACKAGE__->config->{home} 또는 __PACKAGE__->config->{'Controller::FormBuilder'}->{form_path}.

응용 프로그램 기본 모듈에서 FormBuilder 구성을 설정하려는 경우 설명서에 제공된 코드를 사용하고 $c->config->{home}__PACKAGE__->config->{home}으로 바꿀 수 있어야합니다. 나는 그들이 이런 식으로하지 않음으로써 실수를했을 수도 있다고 생각하지만 확실하지는 않습니다.