Описание тега attr-accessor

Аксессор атрибутов в Ruby - это способ объявления доступности атрибутов (чтение и запись) с помощью средств метапрограммирования Ruby.
2 ответа

data_mapper, attr_accessor и сериализация только сериализуют свойства, а не атрибуты attr_accessor

Я использую data_mapper/sinatra и пытаюсь создать некоторые атрибуты с помощью attr_accessor. Следующий пример кода: require 'json' class Person include DataMapper::Resource property :id, Serial property :first_name, String attr_accessor :last_name …
19 авг '12 в 04:48
2 ответа

attr_accessor строго напечатал Ruby on Rails

Просто интересно, может ли кто-нибудь пролить свет на основы методов получения геттеров в Ruby on Rails с видом строго типизированных. Я очень плохо знаком с ruby ​​на рельсах и в основном хорошо разбираюсь в.NET. Например, давайте рассмотрим, у нас…
02 ноя '11 в 23:05
2 ответа

Странное поведение ruby ​​attr_accessor

У меня есть этот блок кода: class CallMe attr_accessor :a, :b, :c def self.start(*args) self.new(*args).get_answer end def initialize(a,b,c) @a = a @b = b @c = c end def get_answer if c b = nil else return b end end end answer = CallMe.start(1,2,nil…
12 июл '17 в 11:18
1 ответ

В рубиновой кирке написано, что attr_accessor - метод класса

В рубиновом кирке есть строчка attr_accessor - это метод класса, определенный в классе Module Но не attr_accessor метод экземпляра? Я что-то здесь упускаю?
31 июл '12 в 00:53
1 ответ

Нужно ли использовать attr_accessor?

Я планирую использовать условные проверки в соответствии с тем, что описано в этом Railscast. В Railscast, который является довольно старым, используется attr_accessor (перейдите к более поздней части видео, чтобы увидеть код). Я относительно новичо…
15 янв '12 в 21:58
2 ответа

Устанавливать динамические значения при генерации методов установки с использованием attr_accessor в ruby

Есть ли лучший способ установить значения для методов установки, когда они сделаны динамически с помощью attr_accessor метод? Мне нужно это для установки значений для них из другой модели в рельсах. Я пытаюсь сделать что-то вроде ниже. Model_class.a…
31 янв '17 в 05:40
0 ответов

Определение attr_accessor для переменных экземпляра класса - Ruby

Я пытаюсь создать метод доступа к переменной экземпляра класса. Я звоню attr_accessor метод из модуля, который входит в класс. Смотрите код ниже: module Persistence def self.included(mod) mod.extend ClassMethods # Add accessor for class instance var…
19 окт '12 в 18:00
3 ответа

Делает ли attr_reader локальную переменную доступной в классе?

Почему type переменная доступна в is_a_peacock? метод в следующем? class Animal attr_reader :type def initialize(type) @type = type end def is_a_peacock? if type == "peacock" return true else return false end end end an = Animal.new('peacock') puts …
23 фев '18 в 09:41
1 ответ

Виртуальный атрибут не устанавливается до того, как attr_encrypted использует указанный виртуальный атрибут для ключа шифрования

Когда encryption_key называется attr_encrypted, :passphrase не был установлен. Ключ шифрования в конечном итоге становится хешем соли sha1; это должен быть sha1 хэш парольной фразы и соли. Соль генерируется при создании и сохраняется в базе данных. …
1 ответ

Ruby: Создание функции "attr_accessor:arg1,:arg2,:arg3"

Поэтому я хочу иметь возможность определять класс следующим образом: class MyHouse < Home things :bed, :lamp, :chair end Где Home заботится о размещении этих "вещей" в массиве, например так: class Home attr_accessor :things def things(*things) @t…
01 янв '13 в 20:22
1 ответ

attr_accessor ломает 2 моих метода в Rails

У меня есть модель пользователя. Одним из его атрибутов является строка с именем :access который может быть либо nil, "admin", либо "active". Теперь внутри модели User у меня есть следующие методы: def admin? self.access == "admin" end def active? s…
19 сен '13 в 23:02
1 ответ

Почему моя переменная экземпляра не указывает на экземпляр Watir::Browser?

Я действительно смущен по этому поводу. Я использую класс Ruby ниже в автоматизированном тестовом наборе: class FlightSearchPage attr_accessor :page_title def initialize(browser, page) @browser = browser @start_url = page end def method_missing(sym,…
21 авг '12 в 20:27
1 ответ

Метод доступа определен, но не работает

У меня есть этот код: class A attr_accessor :count def initialize @count = 0 end def increase_count count += 1 end end A.new.increase_count Жалуется: in `increase_count': undefined method `+' for nil:NilClass (NoMethodError) Если я изменю increase_c…
14 дек '18 в 10:56
1 ответ

Ruby on rails: виртуальный метод, который модифицирует атрибуты модели с помощью << не может сохранить этот атрибут

Есть Ратификация модели с комментарием атрибута (типа text) def Ratification &lt; ActiveRecord::Base attr_accessor :add_comment def add_comment=(text) self.comment ||= "" self.comment &lt;&lt; "\r\n" + text end end И если я использую add_comment= эт…
25 июн '10 в 14:56
4 ответа

За именем функции следует оператор присваивания

Что означает следующее определение функции? Почему в имени функции есть оператор присваивания? def func=(param) @param = param end
26 июн '14 в 05:41
1 ответ

Рубиновая оболочка attr_accessor, возвращающая ноль.

У меня есть простой класс и я переношу двумерный массив следующим образом: class Group attr_accessor :group_array def initialize @group_array = [] end ... def shuffle_groups! new_groups = group_array.transpose group_array = new_groups end end Тем не…
11 дек '14 в 16:46
3 ответа

Ruby: динамически генерировать attribute_accessor

Я пытаюсь сгенерировать attr_reader из хеша (с вложенным хешем), чтобы он автоматически отражал создание instance_variable. вот что у меня так далеко: data = {:@datetime =&gt; '2011-11-23', :@duration =&gt; '90', :@class =&gt; {:@price =&gt; '£7', :…
23 сен '11 в 10:49
2 ответа

Rails4: Как вызвать обратный вызов для attr_accessor при использовании accepts_nested_attributes_for

Пожалуйста, проверьте псевдокод: class Team has_many :users accepts_nested_attributes_for :users, allow_destroy: true end class User belongs_to :team has_many :addresses accepts_nested_attributes_for :addresses attr_accessor :dummy before_validation…
5 ответов

Рубиновые частные и публичные средства доступа

При определении аксессоров в Ruby может быть противоречие между краткостью (которую мы все любим) и лучшей практикой. Например, если я хочу представить значение в экземпляре, но запретить его обновление какими-либо внешними объектами, я могу сделать…
29 авг '14 в 15:39
2 ответа

Рубин: Есть ли драгоценный камень с методом attr_initialize?

Есть ли популярный рубиновый гем, который определяет метод класса attr_initialize, который ведет себя следующим образом: attr_initialize :attr1, :@attr2, [:@attr3, 1] do |arg4| post_initialization(arg4) end будет эквивалентен чему-то эквивалентному:…
07 мар '11 в 20:56