Sto esaminando la guida introduttiva a Rails e mi sono confuso con la sezione 6.7. Dopo aver generato uno scaffold trovo il seguente blocco generato automaticamente nel mio controller:
def index
@posts = Post.all
respond_to do |format|
format.html # index.html.erb
format.json { render :json => @posts }
end
end
Mi piacerebbe capire come funziona il blocco response_to. Che tipo di variabile è il formato? I metodi .html e .json dell'oggetto format sono? La documentazione per
ActionController::MimeResponds::ClassMethods::respond_to
non risponde alla domanda.
format.html
- nessun argomento) userà le convenzioni (basate su URL e verbo HTTP) per scegliere una vista (che dovrebbe essere HTML). Il risponditore (formato) viene incaricato qui di eseguire il rendering degli URL che terminano con .json serializzando su json, anziché utilizzare viste e convenzioni.