在表单中,我有一个回调函数,用于检查数字是否为__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;
}
}
答案 0 :(得分:2)
您需要从语言文件中获取该行。文档没有提及能够使用set_message()
方法使用字段名称转换。使用:
$this->lang->line('not_unique');