2013-02-09 24 views
0

我正在使用HTML::FormHandler,我希望通過在我的控制器類中使其成爲駝鹿屬性來持久化表單。在HTML :: FormHandler的Manual Intro documentation,就這樣說:HTML :: FormHandler持久化表單類

FormHandler makes heavy use of Moose, so almost all of FormHandler's 
profiled time will actually be in Moose methods, mostly constructing form 
and field attributes. Some people prefer to use a persistent form class 
(in a Moose attribute) in order to skip the form building step on each call. 

我想做到這一點,但它不舉一個例子,我不是太熟悉,駝鹿,所以我不知道如何做這個。有沒有人在此之前做過這件事,可以舉一個例子,說明如何在Catalyst代碼中實現此目的?或者只是想法如何做到這一點?謝謝!

回答

0

所以我最終找到了解決方案。事實證明,一個例子就是關於如何在Catalyst中使用HTML :: FormHandler的文檔的另一部分:HTML::FormHandler::Manual::Catalyst。這裏是一個如何使表格持久化的例子(直接從文檔中)

package MyApp::Controller::Book; 
use Moose; 
BEGIN { extends 'Catalyst::Controller'; } 
use MyApp::Form::Book; 
has 'edit_form' => (isa => 'MyApp::Form::Book', is => 'rw', 
    lazy => 1, default => sub { MyApp::Form::Book->new });