Spec-Zone.ru › Ruby on Rails 7.0

модуль ActiveRecord::ReadonlyAttributes::ClassMethods

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

attr_readonly(*attributes) Показать исходный код
# File activerecord/lib/active_record/readonly_attributes.rb, line 25
def attr_readonly(*attributes)
  self._attr_readonly = Set.new(attributes.map(&:to_s)) + (_attr_readonly || [])
end

Attributes перечисленные как неизменяемые будут использоваться для создания новой записи, но операции обновления проигнорируют эти поля.

Вы можете присвоить новое значение неизменяемому атрибуту, но оно будет проигнорировано при обновлении записи.

Примеры

class Post < ActiveRecord::Base
  attr_readonly :title
end

post = Post.create!(title: "Introducing Ruby on Rails!")
post.update(title: "a different title") # change to title will be ignored
readonly_attributes() Показать исходный код
# File activerecord/lib/active_record/readonly_attributes.rb, line 30
def readonly_attributes
  _attr_readonly
end

Возвращает массив всех атрибутов, которые были указаны как неизменяемые.

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

Spec-Zone.ru

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