У меня унаследованную базу с кучей идиотски именованных столбцов, как:Rails ActiveRecord: автоматически псевдоним/добавить суффикс?
some_field_c some_other_field_c a_third_field_c
Я бы очень хотел, чтобы сделать Rails ActiveRecord суб-класс, который автоматически псевдонимы эти атрибуты своего имени минус подчеркиванием и «с». Однако, когда я попытался:
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, был бы потрясающим.
Заранее благодарим за любые ответы на этот пост.
Можете ли вы опубликовать полный пример, это должно быть довольно легко получить работу –