로컬로 (테스트에서 데이터베이스의 보석으로 sqlite3을 사용하여) 잘 실행되는 Heroku에 응용 프로그램을 설치하고 Heroku를 밀고 실행할 때 계속 실행합니다. 오류 :이 라인에 특히Heroku + Rails + PostgreSQL 호
ActiveRecord::StatementInvalid (PG::Error: ERROR: syntax error at or near "order"
LINE 1: ...lery_url_id = 'k19fv2mytjEb_3gCezLeRA') ORDER BY `order` ASC ^
: SELECT "pictures".* FROM "pictures" WHERE (gallery_url_id = 'k19fv2mytjEb_3gCezLeRA') ORDER BY `order` ASC):
app/controllers/galleries_controller.rb:38:in `show'
:
@pictures = Picture.find(:all, :conditions => [ 'gallery_url_id = ?', @gallery.url_id ], :order => "`order` ASC")
참고 : 순서는 데이터베이스 필드가 아닌 SQL 호출 또는 참조입니다. 그러니 내가 두 가지 명령을 내리고 있다고 말하지 마라. 그건 바보 같을거야. 아무 래도 그런 식으로 구문 분석되지 않는 한. 어느 쪽도 어리 석다.
프로덕션 환경의 로컬 테스트 및 PostgreSQL (pg)에서 SQLite를 사용하면 문제가 발생한다는 것을 알고 있습니다. 내 질문은이 문제를 해결하기 위해 무엇을해야합니까? PostgreSQL이 아닌 SQLite에서만 지원되는 find에서 호출하는 플래그 때문입니까?
여기에 PG에 대한 제한된 지식이 있지만 '주문'대신 [주문]을 시도 했습니까? –
수정 된 유일한 것은 "["그래서 나는 그것이 실패한 시도라고 추측합니다 :/ – user1470511
@DominicGoulet : SQL-Server-ism, 큰 따옴표는 표준 구문. –