【问题标题】:Codeigniter overwriting default validation messagesCodeigniter 覆盖默认验证消息
【发布时间】:2012-04-03 22:17:02
【问题描述】:

我正在尝试覆盖验证消息默认值,据我了解,这应该很容易,只需放置一个名为:

application/language/english/MY_form_validation_lang.php

这个文件的内容是:

<?php

$lang['required']           = "required.";

我已经这样做了,但它并没有覆盖默认值,更糟糕的是它正在工作,所以不知道我是如何关闭它的。

我也尝试过直接从我的自定义库/MY_Form_validation.php 类中加载它,但那里仍然没有运气。

<?php if (!defined('BASEPATH')) exit('No direct script access allowed.');

class MY_Form_validation extends CI_Form_validation {

    function __construct()
    {
        parent::__construct();
        $this->CI->lang->load('MY_form_validation');
    }
}

文件正在加载,因为我可以从那里看到回声,但没有任何消息被覆盖。我还注意到我的自定义验证函数正在加载。所以它正在加载文件但没有应用它们或一些奇怪的东西。

【问题讨论】:

    标签: validation codeigniter


    【解决方案1】:

    你的文件名应该是 form_validation_lang.php 不是MY_form_validation_lang.php 检查codeiginter language class document

    【讨论】:

    • 是的,它完全覆盖了默认值,不会扩展它们。
    • 您说“我正在尝试覆盖验证消息默认值”,这就是这样做的方法,您无法扩展它们,您需要创建自己的 lang 文件然后使用$this-&gt;form_validation-&gt;set_message('rule', 'Error Message'); 覆盖此控制器中的规则而不是完整的应用程序检查 http://codeigniter.com/user_guide/libraries/form_validation.html#settingerrors
    猜你喜欢
    • 2020-01-17
    • 2014-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    相关资源
    最近更新 更多