2012-04-03 227 views
0

我試圖覆蓋驗證消息的默認值,這從我的理解應該只是將一個名爲是很容易:這個文件的笨覆蓋默認的驗證消息

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'); 
    } 
} 

該文件正在加載,因爲我可以從那裏看到echo,但是沒有任何消息被覆蓋。我也注意到我的自定義驗證功能正在加載。所以它加載的文件,但不應用它們或一些奇怪的東西。

回答

2

你的文件名應該是 form_validation_lang.phpMY_form_validation_lang.php檢查codeiginter language class document

+0

雅,完全覆蓋默認值,不會擴展它們。 – Rob 2012-04-04 16:48:24

+0

你說「我試圖覆蓋驗證消息的默認值」,這是怎麼做的,你沒有辦法擴展它們,你需要創建你自己的lang文件,然後使用'$ this-> form_validation - > set_message('rule','錯誤消息');'覆蓋此控制器中的規則而不是完整的應用程序檢查[http://codeigniter.com/user_guide/libraries/form_validation.html#settingerrors](http: //codeigniter.com/user_guide/libraries/form_validation.html#settingerrors) – zaherg 2012-04-05 05:44:09

+0

我希望你評價它,如果你覺得它有用,如果它的答案你的問題.. – zaherg 2012-04-07 05:22:29