2017-10-18 2 views
1

Ich habe vor Kurzem begonnen, Codeignite 3 in meinem Nebenprojekt zu verwenden, und ich habe eine Frage der Verwendung der Sprachklasse bekommen.Fehler beim Verwenden der Sprachklasse zum Festlegen der benutzerdefinierten Nachricht in form_validation.php in Codeigniter 3

Hier sind 3 Dateien von meinem Projekt.

  1. /config/form_validation.php
  2. /controllers/login_controller.php
  3. /language/english/form_validation_lang.php

login_controller.php

if ($this->form_validation->run() == FALSE) { 
    ... do something 
} 

form_validation_lang.php

$lang['password_required'] = 'Please insert a password.'; 

form_validation.php

$config = array(
    array(
      'field' => 'username', 
      'label' => 'Username', 
      'rules' => 'required' 
    ), 
    array(
      'field' => 'password', 
      'label' => 'Password', 
      'rules' => 'required', 
      'errors' => array(
        'required' => 'lang:password_required', 
      ), 
    ) 
); 

Alle Standard-Fehlermeldungen in der Ansicht neben lang:password_required gezeigt. Wie kann ich die Sprachklasse in errors Parameter verwenden (funktioniert für Label)?

Vielen Dank für die Hilfe!

Antwort

1

So etwas sollte funktionieren (nicht getestet):

$CI =& get_instance(); 
$CI->lang->load('form_validation', 'english'); 

$config = array(
    array(
      'field' => 'username', 
      'label' => 'Username', 
      'rules' => 'required' 
    ), 
    array(
      'field' => 'password', 
      'label' => 'Password', 
      'rules' => 'required', 
      'errors' => array(
        'required' => $CI->lang->line('password_required'), 
      ), 
    ) 
); 
Verwandte Themen