У меня странная проблема с доктриной и именованными параметрами.
Вот запрос, который на самом деле отлично работает с этим набором параметров (динамический в моем коде):
$params = array( ':id_editeur' => 1,
':nom_editeur' => 'Test');
public function updateById($params)
{
Doctrine_Query::create()
->update('Editeur e')
->set('e.nom_editeur', ':nom_editeur')
->where('e.id_editeur = :id_editeur')
->execute($params);
}
Теперь у меня есть другая функция
public function findAll($params)
{
$query = Doctrine_Query::create()
->from('Editeur e')
->orderBy(':orderby')
->limit(':limit')
->offset(':offset');
return $query->execute($params);
}
С этими параметрами:
$params = array( ':orderby' => ('e.id_editeur ASC'),
':limit' => (10),
':offset' => (20));
И даже если это тот же механизм, я получаю следующую ошибку
Неверный номер параметра: номер
связанные переменные не совпадают с числом
токенов
Есть идеи о причине? Кстати, это работает, если я заполняю orderby, limit и offset прямо в функции классическим способом.