【问题标题】:Cakephp custom validate return in textareaCakephp自定义验证在textarea中返回
【发布时间】:2012-05-18 21:43:04
【问题描述】:

我想对 textarea 使用自定义验证,因为会有斯洛伐克口音,但是当我输入新行时会出现错误。 请告知如何验证输入按钮?谢谢

var $validate = array('text'=>array('custom'=>array(
    'rule' => array('custom', '/^[a-zA-Z0-9cšltžýáíéúóäônd".:,´()CŠLTŽÝÁÍÉÚÓND ]*$/i'),
    'message' => 'Zadávajte prosím len čísla alebo písmená')
        )
    );

【问题讨论】:

  • 也许您需要m 修饰符来验证多行文本。
  • 为什么必须是自定义验证?似乎“非空”几乎涵盖了您的正则表达式。
  • 这部分我不想要链接等

标签: validation cakephp cakephp-1.3


【解决方案1】:

您需要一个自定义验证规则,我建议将其外部化到模型函数中。 此外,您的内联验证对我来说似乎有点坏了。

那么你可以做什么:

var $validate = array(
    'text' => array(
        'rule' => 'myNewCustomRule',
        'message' => 'Zadávajte prosím len čísla alebo písmená'
    ));

以及模型中的功能:

 function myNewCustomRule($custom) {
     //You may need to add here because the $data array is passed using the form field name as the key, you will have to extract the value to make the function generic
     //array_shift($custom);
     return preg_match('/^[a-zA-Z0-9cšltžýáíéúóäônd".:,´()CŠLTŽÝÁÍÉÚÓND ]*$/i', $custom);
 }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    相关资源
    最近更新 更多