2013-05-22 14 views
21

Come posso creare un URL helper per creare un URL in un determinato formato di richiesta/risposta?Rails - Come aggiungere un formato a un url helper?

Per esempio, nel mio test ho il seguente:

get(activity_url(activity)) 

Questa volontà mi restituisce un HTML sull'oggetto @response. Sto cercando di avere lo stesso comportamento di quanto segue:

get({controller: 'activities', action: 'show', id: activity.id, format: 'js'}) 

ma senza tutte queste parole. È possibile?

risposta

36

Si dovrebbe essere in grado di fare qualcosa di simile:

some_resource_path(format: :json) 

o

some_resource_url(format: :xml) 
+1

Grazie, funziona, come ultimo parametro. Sai dove posso trovare i documenti per questo aiuto url? – fotanus

+2

una sintassi abbreviata 'some_resource_path: json' funziona anche – vincentp

0

Sono abbastanza nuovo per Rails/Ruby, quindi non sono sicuro del perché, ma nella mia Applicazione Rails 3.2 la sintassi deve essere ad esempio:

some_resource_path(:format => :json) 
+0

intendevi ': format =>: json'? È lo stesso di 'format:: json', ma con un po 'di zucchero di sintassi in più. Tuttavia, 'format: =>: json' sembra un errore di sintassi. – fotanus

+0

Certo, grazie per averlo fatto notare. Ora è corretto :-) –

Problemi correlati