Как я могу использовать ActiveRecord на базе данных, которая имеет столбец, названный 'допустимым'? (DangerousAttributeError)

14
задан Amokrane Chentir 19 May 2011 в 17:27
поделиться

2 ответа

Попробуйте следующее:

class MyTable < AR:Base
   class << self
     def instance_method_already_implemented?(method_name)
       return true if method_name == 'valid'
       super
     end
   end
end

Это взлом, и он может не работать в rails 3, но пока может решить проблему.

Я нашел его на ruby в списке рассылки Rails

Если хотите, вы также можете посмотреть datamapper , который обрабатывает подобные вещи несколько более разумно.

11
ответ дан 1 December 2019 в 13:09
поделиться

For reads you might be able to use SQL's select-as statement. Not sure if the following will work, but a default scope may make this easily do-able.

class MyRecord < ActiveRecord::Base
    default_scope :select=> 'valid as valid_column'
end
2
ответ дан 1 December 2019 в 13:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: