Предложение WHERE Postgresql добавляет & #39;& #39; вокруг?

Этим утром я переключился на postgresql, и теперь мой выбор больше не работает.

То, что я пытаюсь сделать, очень просто:

shirt_ids = "1,5,6" # String generated by javascript
Shirt.where("id in (?)", shirt_ids)

Это дает мне:

PG::Error: ERROR:  invalid input syntax for integer: "1,5,6"
LINE 1: SELECT "shirts".* FROM "shirts"  WHERE (id in ('1,5,6'))

Хотя это работает:

Shirt.where("id in (#{shirt_ids})")

Но, как всем известно, это небезопасно.

Я использую:

pg (0.13.2 x86-mingw32)
rails (3.2.2)

База данных Postgresql — самая новая версия, я установил ее сегодня утром.

Спасибо за помощь. ^

0
задан KimJongIl 7 May 2012 в 04:42
поделиться