Mike.G wrote:
> Hi, 最近自己写个项目。
> 用的是CGI::Application,
> 我加入了CGI::Application::Plugin::ValidateRM
> 配合HTML::FormInFill插件来使用。
> 
> 这里的问题是。
> 在Data::FormValidator的profile里:
> 1、如何让一个字段应用多个constraint_method呢?
> 我看文档里写的是类似这样的:
> 字段名=>[
> constraint_name,
> 
> {
>    name=>'name',
>    constraint_method=>email(), (#就是选定的constraint)
> }
> 
> ]
> 
> 看上去可以work. 问题是,可否让这个字段在第一个constraint_name时检查失 
> 败,就不见查后一个或者多个constraint呢?
> 

这种情况下我记得第一个失败了,下一个就不会去检查了。


> 2、我看文档里说可以使用自定义的sub 引用。
> 比如说这样写:
> 字段名=>my_sub()
> 
> sub my_sub {
>     return sub {
>      my $dfv = shift;
>      $dfv->name_this('my_sub');
>      return something.
> 
> }
> }
> 
> 但是这个时候有个问题,我发现my_sub是可以执行的。但是如何返回出错消息呢? 
> 如果没有通过验证。
> 
> 比如说类似这种:
> 
> 字段名=>my_sub(),
> msgs=>{
>    constraint=>{
>      my_sub=>'error is here',
> }
> }
> 
> sub my_sub {
>     return sub {
>      my $dfv = shift;
>      $dfv->name_this('my_sub');
>      return something.
> 
> }
> }
> 
> 
> 实际上在我的代码中,总是不会出现那个error is here.

sub 里检验没有通过需要返回 false ,这时错误信息才会显示。

Qiang

--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛“PerlChina Mongers 讨论组”论坛。
 要在此论坛发帖,请发电子邮件到 [email protected]
 要退订此论坛,请发邮件至 [email protected]
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---

回复