Spec-Zone.ru › Ruby on Rails 5.2

class ActiveModel::Validations::AcceptanceValidator::AttributeDefinition

Родитель:
Object

Атрибуты

attributes[R]

TODO Изменить на private, как только мы откажемся от поддержки Ruby 2.2. Обходной путь для предупреждения Ruby 2.2 "private attribute?".

Публичные методы класса

new(attributes) Показать исходный код
# File activemodel/lib/active_model/validations/acceptance.rb, line 45
def initialize(attributes)
  @attributes = attributes.map(&:to_s)
end

Публичные методы экземпляра

define_on(klass) Показать исходный код
# File activemodel/lib/active_model/validations/acceptance.rb, line 54
def define_on(klass)
  attr_readers = attributes.reject { |name| klass.attribute_method?(name) }
  attr_writers = attributes.reject { |name| klass.attribute_method?("#{name}=") }
  klass.send(:attr_reader, *attr_readers)
  klass.send(:attr_writer, *attr_writers)
end
matches?(method_name) Показать исходный код
# File activemodel/lib/active_model/validations/acceptance.rb, line 49
def matches?(method_name)
  attr_name = convert_to_reader_name(method_name)
  attributes.include?(attr_name)
end

© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API