Мой первый удар по этой проблеме, вероятно, будет выглядеть примерно так. Предполагается, что вы используете rails 3, jQuery и jquery-rails. Если нет, такой подход определенно не сработает. Точный код не проверен, поэтому пробег может отличаться. Я просто пытаюсь дать вам представление о том, как вы можете подумать о проблеме. Если вы хотите, чтобы я подробно рассказал о том, как это работает, или у вас есть вопросы, дайте мне знать, и я постараюсь объяснить.
Превратите вашу ссылку в пост ajax:
<%= link_to "Create a new company", new_company_path, :remote => true, :method => :post %>
В вашем контроллере ответьте шаблоном javascript:
def create
@company = Company.new(params[:company])
respond_to do |format|
if @company.save
format.js
else
format.js { render 'error' }
end
end
end
В views / companies / create.js.erb выполните JS, чтобы открыть новое окно.
window.open (<%= company_url(@company) %>, "mywindow","width=600,height=600");
И это должно более или менее сделать это, я думаю. У меня было несколько сортов пива, поэтому будьте осторожны.