Сохранение данных и форм - это две разные вещи, вы можете использовать одну без другой. Вы можете передавать переменные из браузера на сервер либо через POST (обычно через форму), либо через GET (в URL). Смешайте и сопоставьте это, чтобы сделать все, что вы хотите сделать. Например:
echo $html->link('Set as cover', array('controller' => 'albums', 'action' => 'set_cover', 42, 123));
URL: /albums/set_cover/42/123
class AlbumsController extends AppController {
function set_cover($album_id, $photo_id) {
$this->Album->save(array('id' => $album_id, 'cover_id' => $photo_id));
}
}