Я довольно новичок в Rails, и мне было любопытно, что некоторые соглашения используют эксперты, когда им нужно создать очень сложный SQL-запрос, содержащий много условий. В частности, сохраняя код читаемым и поддерживаемым.
Есть несколько способов, которые я могу придумать:
Одна строка, в вызове для поиска ():
@pitchers = Pitcher.find(:all, "<conditions>")
Используйте предопределенную строку и передайте ее:
@pitchers = Pitcher.find(:all, @conditions)
Использование закрытой функции-члена для возврата запроса
@pitchers = Pitcher.find(:all, conditionfunction)
Я склоняюсь к соглашению о закрытой функции-члене, кроме того, потому что вы можете передать параметры для настройки запроса.
Есть мысли по этому поводу?