Простым примером может быть Пост, который имеет три состояния: ПРОЕКТ, ОПУБЛИКОВАН И УДАЛЕН.
То, как я делаю это прямо сейчас, выглядит примерно так:возникает то, что когда я запускаю свои тесты с использованием spork, мне приходится вручную перезагружать модель, что-то вроде
Spork.each_run do
Dir["#{Rails.root}/app/models/**/*.rb"].each { |model| load model }
end
, что в результате дает мне множество предупреждений типа
warning: already initialized constant DRAFT
warning: already initialized constant PUBLISHED
warning: already initialized constant DELETED
Все работает просто отлично, но я не думаю, что это лучший способ сделать это. Есть ли лучший способ сделать это?Я знаю, что есть драгоценные камни, такие как acts_as_state_machine
, но я бы хотел узнать решение, не относящееся к драгоценным камням, если оно простое.