У меня есть одна проблема и два класса, которые включают ее. В беспокойстве я определил одну переменную. Вот это забота и две модели:Правильное использование констант беспокойства
module UserInstance
extend ActiveSupport::Concern
included do
ACTIVE = 'active'
end
end
class Guardian < ActiveRecord::Base
include UserInstance
end
class Student < ActiveRecord::Base
include UserInstance
end
Я получаю это предупреждение:
/app/app/models/concerns/user_instance.rb:12: warning: already initialized constant UserInstance::ACTIVE
/app/app/models/concerns/user_instance.rb:12: warning: previous definition of ACTIVE was here
Я думаю, что когда-то он загружает один класс (как Guardian
), он также загружает константу, и загрузка другого класса пытается снова загрузить константу, а затем выдается предупреждение. Как я могу избежать этого, не ставя константы в две модели? Спасибо
Да, даже на Rails 5, используя проблемы, кажется, это правильный способ сделать это – jpwynn