У меня есть устаревшая база данных с кучей идиотски названных столбцов, таких как:
some_field_c
some_other_field_c
a_third_field_c
Я бы очень хотел создать подкласс Rails ActiveRecord, который автоматически присваивает этим атрибутам их имена без знака подчеркивания и "c". Тем не менее, когда я пытался:
attributes.each_key do | key |
name = key
alias_attribute key.to_sym, key[0, (key.length -2)].to_sym if key =~ /_c$/
end
в моем определении класса я получил ошибку «неопределенная локальная переменная или метод« атрибуты »». Я также попытался переписать эти методы:
method_missing
respond_to?
но я тоже получал ошибки с этим маршрутом.
Итак, мой вопрос (на самом деле вопросы):
- Возможно ли то, что я пытаюсь сделать?
- Если так, как лучше всего это сделать (отсутствует метод итеративного псевдонима или перезаписи)?
- Если это не так уж и сложно, очень краткий пример кода того, как сделать №2, был бы великолепен.
Заранее спасибо за любые ответы, которые получает это сообщение.