Я работаю над приложением обслуживания. В основном у меня есть метод в моем коде, который вызывается несколькими методами. Этот метод в основном формирует SQL-запрос, как показано ниже.
def filter_data
data = Student.all
data = data.where(:id => params[:id]) if params[:id]
data = data.where(:roll_no => params[:roll_no]) if params[:roll_no]
return data
end
я использую этот метод во многих местах в моем приложении, как показано ниже
def get_user_data
data = filter_data
data.pluck("sum(marks)")
end
Теперь проблема в том, что я хочу добавить внутреннее соединение к таблице «студенты» внутри метода filter_data
. Теперь, поскольку столбец «marks» находится в обеих таблицах, мне придется добавить псевдоним в метод «get_user_data», как показано ниже.
data.pluck("sum(students.marks)")
Добавление псевдонима не проблема, но мне придется добавить псевдоним во все мое приложение, где используется метод "filter_data"
. Это очень трудоемкий процесс, и я хочу избежать его. есть ли способ указать активной записи использовать «xxx» в качестве псевдонима, когда псевдоним отсутствует в запросе sql.
Пожалуйста, дайте мне знать, если у кого-то есть какие-либо решения для этой проблемы.
marks
? - person Pavan   schedule 21.06.2017