我正在使用HTML::FormHandler,我想通过在我的控制器类中使其成为moose属性来使我的表单持久化。在HTML :: FormHandler的Manual Intro documentation中,它说:
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.
我想这样做,但是它没有给出一个例子,我对Moose不太熟悉,所以我不知道该怎么做。有没有人在此之前完成此操作可以提供一个示例,说明要在Catalyst代码中放置什么来实现此目的?或者只是想知道怎么做?谢谢!
答案 0 :(得分:0)
所以我最终找到了解决方案。事实证明,一个例子就是关于如何在Catalyst:HTML::FormHandler::Manual::Catalyst中使用HTML :: FormHandler的文档的不同部分。这是一个关于如何使表单持久化的示例(直接来自文档)
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 } );