【问题标题】:Write input label once for both form helper and form validation class为表单助手和表单验证类编写一次输入标签
【发布时间】:2012-11-13 22:01:00
【问题描述】:

有没有办法使用我已经放入 form_validation 规则的值来创建 html 表单标签?示例...

控制者:

$config = array('somerule' => 
                      array('label' => 'Nick name',
                            'field' => 'nickname'
                            'rules' => 'trim|required|max_length[255]')
               )

查看:

<?php echo form_open(); ?>
<?php echo form_label('Nick name', 'nickname'); ?>
<?php echo form_input('nickname', set_value('nickname', $data['nickname'], array('id'=>'nickname')); ?>
</form>

我需要在验证规则和 html 视图中写入“昵称”。有没有像$this-&gt;form_validation-&gt;get_label('nickname') 这样的神奇功能,可以给我正确的标签/语言,而不是在视图中再次写“昵称”?

谢谢你们!

【问题讨论】:

    标签: php forms codeigniter continuous-integration validation


    【解决方案1】:

    为什么不使用CI Language class

    制作您自己的语言文件,例如form_lang.php 并将其放在 application/language/english 文件夹中(假设您的默认语言是在配置中定义的 english)。

    以这种模式写出你的语言短语:

    $lang['index']="value";
    

    在控制器中加载一次语言文件

    $this->lang->load('form');
    

    就是这样!
    您也可以在控制器(您的验证配置数组)中使用 $this-&gt;lang-&gt;line('index') 并加载视图。

    在你的视图中使用$this-&gt;lang-&gt;line('index'),它已经被你的控制器加载了。

    【讨论】:

      猜你喜欢
      • 2012-04-30
      • 2016-12-09
      • 1970-01-01
      • 2018-04-04
      • 1970-01-01
      • 2019-09-26
      • 1970-01-01
      • 1970-01-01
      • 2021-04-02
      相关资源
      最近更新 更多