2015-12-16 3 views
1

Я пытаюсь построить следующий запрос в PropelУсловный заказ на в Propel ORM с точкой в ​​состоянии

SELECT * 
FROM user 
ORDER BY username = 'foo.bar' DESC, username 

Эти все варианты дают мне ошибки:

UserQuery::create() 
    ->addAscendingOrderByColumn("username = 'foo.bar'") 

Это вызвано из-за ".". Без него работает

ErrorMessage:

"Criteria:(Error: Cannot fetch TableMap for undefined table: username = 'foo)" 

ответ

0

К сожалению, это не представляется возможным в Propel 1 (и я не знаю, если это возможно с Propel 2). У меня была аналогичная проблема:

https://groups.google.com/forum/#!topic/propel-users/sz3wA_bdF8k

И при дальнейшем исследовании, я обнаружил, что можно передавать только имена столбцов и полные имена (table.column) в ORDER BY методов. Однако инструкции switch работают в статьях ->withColumn, для тех, кто пытается сделать что-то подобное.