Supponiamo che tu sia nel controller degli utenti e desideri ottenere una risposta JSON per una richiesta di show, sarebbe bello se tu potessi creare un file nelle tue viste/utenti/dir, chiamato show.json e dopo i tuoi utenti L'azione #show è completata, esegue il rendering del file.In Rails, come si esegue il rendering di JSON utilizzando una vista?
Attualmente è necessario fare qualcosa sulla falsariga di:
def show
@user = User.find(params[:id])
respond_to do |format|
format.html
format.json{
render :json => @user.to_json
}
end
end
Ma sarebbe bello se si può solo creare un file show.json che automaticamente viene reso in questo modo:
def show
@user = User.find(params[:id])
respond_to do |format|
format.html
format.json
end
end
Questo mi avrebbe risparmiato un sacco di dolore, e avrebbe lavato via quella sensazione orribilmente sporca che ottengo quando renderò il mio json nel controller
Guardando questo post ora, sembra che questo non mi salverà molto, ma ho casi più complicati, credimi quando dico che questo mi sta causando mal di testa – Matthew
In Rails 3, puoi semplicemente chiamare 'format.json' con un file 'show.json.erb'. Vedi la mia risposta. –