Questo non è possibile per direttamente dal controllore. L'utilizzo di redirect_to @url
ha l'effetto di aprire un url nella stessa "finestra", in quanto invia semplicemente un'istruzione di reindirizzamento HTTP al browser. redirect_to
non è in grado di aprire nuove finestre. Il controller si trova sul lato server e l'apertura di una nuova finestra appartiene al lato client.
Alcune opzioni:
a) rendere un legame con <%= link_to 'Google', 'google.com', :target => '_blank' %>
o <a href="google.com" target="_blank">Google</a>
cui l'utente può fare clic su una nuova visione
b) utilizzare JavaScript per aprire il collegamento automaticamente, ma attenzione che i browser possono trattare come popup e bloccarlo
Combinando queste opzioni è possibile aprire i collegamenti in una nuova finestra per i browser/utenti che lo consentono e tornare a un URL normale nel caso in cui non funzionasse.
fonte
2011-10-21 21:47:47
Vedere anche https://stackoverflow.com/a/17685988/2917523 se è necessario aprire un URL nella finestra _parent_ dal controller, non è l'ideale, ma è possibile. –