设置位于语言文件中的错误消息

时间:2011-09-27 19:20:40

标签: codeigniter pyrocms

在表单中,我有一个回调函数,用于检查数字是否为__available。 如果它返回TRUE则显示错误消息。

回调正在运行,但它显示:lang:shortcodes.not_unique而不是单独文件中给出的内容。

我无法弄清楚出了什么问题,但在用户指南中没有找到。

感谢您的帮助。

public function __construct()
{
    parent::__construct();

    // Load all the required classes
    $this->load->model('shortcodes_m');
    $this->load->library('form_validation');
    $this->lang->load('shortcodes');

    // Set the validation rules
    $this->item_validation_rules = array(
        array(
            'field' => 'number',
            'label' => 'lang:shortcodes.number',
            'rules' => 'trim|max_length[100]|required|numeric'
        ),
        array(
            'field' => 'name',
            'label' => 'lang:shortcodes.name',
            'rules' => 'trim|max_length[100]|required|callback_shortcodes_check'
        )
    );

}
public function shortcodes_check($str)
{
    if($this->shortcodes_m->is_available($str) == TRUE)
    {
        $this->form_validation->set_message('shortcodes_check','lang:shortcodes.not_unique');
        return FALSE;
    }
    else
    {
        return TRUE;
    }
}

1 个答案:

答案 0 :(得分:2)

您需要从语言文件中获取该行。文档没有提及能够使用set_message()方法使用字段名称转换。使用:

$this->lang->line('not_unique');