In this recipe, we will learn different approaches for the same need: translating model validation messages.
To go through this recipe, we need a basic application skeleton to work with. Go through the previous recipe.
Edit the file article.php
located in your app/models
folder and make the following changes to the validate
property:
public $validate = array(
'title' => array(
'required' => 'notEmpty'
),
'body' => array(
'required' => 'notEmpty'
)
);
There are two ways to have validation messages translated. The first one requires you to override the model constructor by adding the following implementation to the Article
class defined in your app/models/article.php
file:
public function __construct($id = false, $table = null, $ds = null) { foreach($this->validate as $field => $rules) { if (!is_array($rules)) { $rules = (array) $rules; } foreach($rules as $key => $rule) { if (!is_array($rule)) { $rules...