SQL:
CREATE TABLE IF NOT EXISTS `photoalbums` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(200) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
Модель:
<?php defined('SYSPATH') OR die('No Direct Script Access');
Class Model_PhotoAlbum extends ORM {}
?>
Действие контроллера:
public function action_edit()
{
$id = $this->request->param('id');
$album = ORM::factory('photoalbum', $id);
$this->template->album = $album;
if ($this->request->post())
{
$album->title = $this->request->post('title');
$album->save();
$this->request->redirect('/');
}
}
Каждый раз, когда я редактирую какой-то альбом, ORM просто вставляет новый экземпляр в БД, а не обновляет его. Я очень хорошо гуглил, но не могу найти решение.
Кроме того, я попытался использовать Jelly ORM, и это тоже вызвало эту проблему.
UPDATE:
TWIG:
<!DOCTYPE HTML>
<html>
<head>
<title>Фотоальбомы</title>
<link rel="stylesheet" type="text/css" href="/media/css/main.css" />/>
<script src="media/js/jquery-1.7.1.min.js" />
<script src="media/js/main.js" />
</head>
<body>
<h1>Новый фотоальбом</h1>
<form action="/photoalbum/edit/" method="POST">
<p>
<label for="title">Название:</label><input type="text" id="title" name="title" value="{{ album.title }}" />
</p>
<p><input type="submit" value="Сохранить" /></p>
</form>
</body>
</html>