Метод constantize
преобразует строку в константу (например, класс или модуль). Однако вызов eval
уже возвращает класс, а не строку, так что в некотором смысле он уже выполняет то, что сделал бы constantize
.
Я рекомендую удалить вызов eval
, поскольку constantize
гораздо безопаснее в использовании.
def constantize_model(common_part)
(I18n.locale.capitalize + '::' + common_part).constantize
end
Таким образом, вы вызываете constantize
в строке, как задумано.