2016-04-20 8 views
1

Ist es möglich, irgendeine Art von Platzhalter in einer RABL-Vorlage zu verwenden, die alle zugänglichen Attribute des Modells zurückzieht, anstatt sie einzeln angeben zu müssen?RABL - Wildcard enthält alle Attribute

Als Beispiel zeigt die RABL-Dokumentation etwas wie folgt, das die :id, :title, :subject Attribute zurückbringt.

# app/views/posts/index.rabl 
collection @posts 
attributes :id, :title, :subject 
child(:user) { attributes :full_name } 
node(:read) { |post| post.read_by?(@user) } 

würde Ich mag stattdessen so etwas wie

# app/views/posts/index.rabl 
collection @posts 
attributes * 
child(:user) { attributes :full_name } 
node(:read) { |post| post.read_by?(@user) } 

zu tun und diese :id, :title, :subject, :author, :etc

Antwort

1

Sie geben haben sollte dies tun können ...

attributes *Post.column_names 

Model.column_names kehrt ein Array aller Spalten, und der Stern vorne übersetzt es in Komma sep artige Argumente.

+0

Danke. Ich habe mich (buchstäblich) gewendet, als ich deine Antwort gelesen habe. – bigtunacan