Я нахожусь в процессе переключения моей среды разработки с sqlite3 на postgresql 8.4 и имеет один последний барьер.Как сделать регистр без учета регистра в Rails с postgresql
В моем оригинале у меня была следующая строка в вспомогательном методе;
result = Users.find(:all, :order => "name collate NOCASE")
который обеспечил очень хороший поиск без учета регистра. Я не могу воспроизвести это для postgresql. Должно быть легко - любые идеи?
Спасибо.
Nice, который работал спасибо. Направил меня в правильном направлении, чтобы узнать немного больше об этом для себя. Использование UPPER (name) также работает, и на самом деле это то, что оказалось в моем коде - без особых причин. – brad
Более экстремальное решение, к которому я прибегал, - это дополнительная колонка, отслеживающая исходный столбец. Используя триггеры для вставки или обновления, измените этот столбец. Я использовал это в прошлом пару раз, где я хотел сортировать названия чего-то и не хотел, чтобы ведущие слова «a, an, the» учитывались. Я также удалил всех специальных персонажей. Это привело к тому, что «title», «title», «title», «Title» сортировались рядом друг с другом, а не разбросаны. Это также позволило отредактировать сортируемое поле, чтобы я мог сделать «заголовок V» до «title IX». – LanceH
Если вам нужно это на 'default_scope', используйте' default_scope order ('LOWER (name) ASC') '. Мне немного хотелось разобраться в деталях. –