Что является направляющими 3 замены для ActiveRecord:: Ошибки?

Что является направляющими 3 замены для ActiveRecord:: Ошибки?

В направляющих 2.3.8, это - объект:

>> ActiveRecord::Errors
=> ActiveRecord::Errors

В направляющих 3.0.0rc, Вы получаете NameError:

>> ActiveRecord::Errors
NameError: uninitialized constant ActiveRecord::Errors
 from (irb):2

Я пытаюсь заставить wizardly генератор работать с направляющими 3.

$ rails g wizardly_scaffold home

Но это перестало работать:

/Library/Ruby/Gems/1.8/gems/wizardly_gt-0.1.8.9/lib/validation_group.rb:150:
uninitialized constant ActiveRecord::Errors (NameError)

Строка, к которой это относится, является этим:

ActiveRecord::Errors.send :include, ValidationGroup::ActiveRecord::Errors

Ранее в файле, мы видим:

module ValidationGroup
  module ActiveRecord
...
    module Errors # included in ActiveRecord::Errors
      def add_with_validation_group(attribute, msg = I18n.translate('activerecord.errors.messages')[:invalid], *args, &block)
        add_error = @base.respond_to?(:should_validate?) ? (@base.should_validate?(attribute.to_sym) || attribute == :base) : true
        add_without_validation_group(attribute, msg, *args, &block) if add_error
      end
...
end

11
задан Paul Schreiber 8 August 2010 в 04:44
поделиться

2 ответа

Это будет ActiveModel :: Errors . Такие вещи, как проверки и обработка ошибок, были перенесены в Active Model, чтобы предоставить общий API для всех ORM Railties, таких как Active Record, Data Mapper, Mongoid и т. Д., Для подключения к Rails.

Похоже, что волшебный плагин должен сначала проверить ActiveModel и, если он существует, включить туда обработку ошибок, а не ActiveRecord :: Errors . Мелочь.

12
ответ дан 3 December 2019 в 09:18
поделиться

Попробуйте этот гем

http://rubygems.org/gems/wizardly_gt

Я только начал играть с Wizardly, но, по крайней мере, вышеперечисленное кажется совместимым с Rails 3.

0
ответ дан 3 December 2019 в 09:18
поделиться
Другие вопросы по тегам:

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