Novecento Normal
Novecento Demibold
Novecento Bold
Un autre générateur de JSON
Dans les épisodes précédents nous vous avons présenté des gems comme JBuilder ou acts_as_api. Aujourd’hui une gem tout aussi cool, avec encore plus de fonctionnalités.
Comme pour JBuilder vous devrez créer des templates pour répondre à vos demandes d’API. Par exemple :
show.rabl
object @posts
attributes :id, :title, :subject
Sans oublier le bloc respond_to dans votre controller :
def show
@post= Post.find(params[:id])
respond_to do |format|
format.html
format.json { render json: @post}
end
end
Envie de rajouter autre chose qu’un des attributs de votre model ? On peut utiliser la méthode node comme ceci :
object @posts
attributes :id, :title, :subject
node(:edit_url) { edit_article_url(@post) }
On aimerai bien avoir la même chose pour l’action index de notre controller, mais comme on a la flemme de tout réécrire, on utilise la méthode extends :
index.rabl
collection @posts
extends "posts/show"
Et encore plein d’autres belles choses dans la documentation, bonne lecture !
Les liens utiles