Geben Sie die Attributliste in attr_accessor mit Methodenaufruf an

8

Ich möchte eine große Anzahl von Attributen erstellen, die einfach ausgeführt werden können, wenn sie mit einem Methodenaufruf wie diesem erstellt werden,

%Vor%

Das funktioniert nicht. Gibt es einen anderen Weg, dies zu erreichen?

Jede Hilfe wird geschätzt.

    
maximus ツ 15.05.2013, 10:49
quelle

3 Antworten

14

Ich habe es herausgefunden,

%Vor%

Erläuterung:

Als attr_accessor ist ein Methodenaufruf, der die Parameterliste erwartet. Daher können wir Array nicht so übergeben, wie es ist. ( * ) konvertiert das Array in die Parameterliste.

Sie müssen nur eine Klassenmethode definieren, die das Array attribute list an attr_accessor zurückgibt.

Funktioniert gut mit attr_accessible (oder etwas Ähnlichem).

    
maximus ツ 12.06.2013, 18:08
quelle
2

Eine Möglichkeit, dies ohne Warnung zu tun:

%Vor%     
Joshua Swink 26.01.2016 23:46
quelle
0

Die akzeptierte Lösung erzeugt eine Ruby-Warnung:

  

'*' wird als Argumentpräfix interpretiert

Eine Alternative wäre, so etwas zu tun:

%Vor%

oder

%Vor%     
Javid Jamae 25.02.2015 01:05
quelle