Передача ошибок для просмотра
Я использую kohana 3.3 и kostache. Пожалуйста, помогите мне в этом. Как вы передаете ошибки в представление.
контроллер
public function action_add()
{
$renderer = Kostache_Layout::factory();
$view = new View_Pages_Album_List();
try
{
$album = ORM::factory('Album_Information');
$album_name = $this->request->post('inputAlbum');
$artist = $this->request->post('inputArtist');
$album->Album_Name = $album_name;
$album->Artist = $artist;
$album->save();
}
catch (ORM_Validation_Exception $e)
{
$errors = $e->errors('models');
$view->errors = $errors;
}
$this->response->body($renderer->render($view));
}
файл шаблона
<h3>Add A New Album</h3>
<form method="POST" action="album/add">
<label>Album Name:</label>
<input type="text" name="inputAlbum" /><br />
<label>Artist:</label>
<input type="text" name="inputArtist" /><br />
<input type="submit" name="submit" value="Add" />
</form>
{{errors}}
Правила..
public function rules()
{
return array(
'inputAlbum' => array(
array('not_empty'),
),
'inputArtist' => array(
array('not_empty'),
),
);
}
Сообщения..
<?php defined('SYSPATH') or die('No Direct Script Access');
return array(
'not_empty' => ':field must not be empty',
);
Каждый раз, когда я нажимаю кнопку отправки, я не получаю никаких ошибок. Что я получаю, так это проблему преобразования массива в строку.
1 ответ
Глупо с моей стороны лол. Получил это работает.
<h3>Add A New Album</h3>
<form method="POST" action="album/add">
<label>Album Name:</label>
<input type="text" name="inputAlbum" /><br />
<label>Artist:</label>
<input type="text" name="inputArtist" /><br />
<input type="submit" name="submit" value="Add" />
</form>
{{#errors}}{{inputAlbum}}{{/errors}}
{{#errors}}{{inputArtist}}{{/errors}}
Я забыл, что нужен ключ, чтобы это работало. Так что это решает проблему.