ActiveRecord выбрать поле строки определенной длины в Rails 3? - PullRequest
25 голосов
/ 29 сентября 2010

Я получил серию сообщений и хотел бы выбрать все сообщения, размер заголовка которых меньше 30, как это сделать?

Posts.where("len(title) < 30")?

Ответы [ 2 ]

45 голосов
/ 30 сентября 2010

Это должно работать:

Post.where("length(title) < 30")

Вы правильно используете #where в качестве сокращения для: условий в Rails 3. Вы можете передать любой фрагмент, который работает в вашем локальном SQL напрямую.

Просто помните, что классы моделей ActiveRecord являются единичными по соглашению.

1 голос
/ 30 сентября 2010

Это работает для меня с MySQL: Post.find (: все,: условия => "длина (заголовок) <30") </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...