У меня есть следующая проблема: скажем, у меня есть таблица Users и вторая таблица UserStrings для локализации. UserStrings имеет следующие столбцы: {user_id, language_id, full_name}Вызов метода модели с параметрами в Rails
У меня также есть метод current_language в ApplicationController, который возвращает идентификатор текущего языка.
Мне нужно использовать collection_select, и мне нужно отображать имена пользователей текущего языка в списке.
<%= fb.collection_select(:id, User.all,:id, :full_name, {}, {})%>
Дело в том, что в таблице пользователей нет колонки full_name. Я знаю, что можно сделать модельный метод и назвать его вместо имени.
<%= fb.collection_select(:id, User.all,:id, :model_method, {}, {})%>
Этот метод модель, которую я хотел, чтобы запустить эту маленькую линию
self.user_strings.find_by(:language_id => current_language).full_name
Вот это проблема, я знаю, что это не представляется возможным использовать метод контроллера в моделях, так что я не могу получить current_language в моя Модель. Можно ли вызвать: model_method с параметром (current_language). Если нет, есть ли другой способ заставить это работать?
пс. И нет возможности переписать текущий_язык как новый модельный метод в Модели, потому что он сложнее, чем кажется.
Заранее благодарен!