在 CakePHP 模型验证中使用 gettext

发布于 2024-09-12 21:44:28 字数 456 浏览 3 评论 0原文

是否有可能在 CakePHP 模型验证数组中使用 gettext 功能?

通常程序员会这样做:

class Data extends AppModel
{
 var $validate = array(
  'title' => array(
   'NichtLeer' => array(
    'rule' => array('between', 4, 20),
    'allowEmpty' => false,
    'message' => _('Bitte geben Sie einen Titel an!')
   )
  )
 );
}

但是由于不可能在方法范围之外使用函数,因此我必须找到另一个干净的替代方案。

那么,除了定义模型设置中临时验证方法之外,还有其他选择吗?

问候, 贝内迪克特

Is there any possibility to use the gettext functionallity within the CakePHP model validation array?

Usually a programmer would do it like this:

class Data extends AppModel
{
 var $validate = array(
  'title' => array(
   'NichtLeer' => array(
    'rule' => array('between', 4, 20),
    'allowEmpty' => false,
    'message' => _('Bitte geben Sie einen Titel an!')
   )
  )
 );
}

But since it is not possible to use functions outside a method's scope, I have to find another clean alternative.

So, is there any alternative to the one, that defines the validations improvised in the model's setup method?

Regards,
Benedikt

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

活泼老夫 2024-09-19 21:44:28

在构造函数中构建 validate 数组可以被认为是一个干净的替代方案:

class Data extends AppModel {
    public function __construct() {
        $this->validate = array(
            'title' => array(
                'NichtLeer' => array(
                    'rule' => array('between', 4, 20),
                    'allowEmpty' => false,
                    'message' => _('Bitte geben Sie einen Titel an!')
                )
            )
        );
    }
}

Building the validate array in the constructor could be considered a clean alternative:

class Data extends AppModel {
    public function __construct() {
        $this->validate = array(
            'title' => array(
                'NichtLeer' => array(
                    'rule' => array('between', 4, 20),
                    'allowEmpty' => false,
                    'message' => _('Bitte geben Sie einen Titel an!')
                )
            )
        );
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文