保存后重定向到另一个URL

时间:2013-09-04 12:07:10

标签: ruby-on-rails ruby-on-rails-3 routing

在我的控制器上创建@page后,我想重定向到等于

的路径
/@page.unique

即。 / 24dds3

我已经为它设置了'show'动作:

def show
  @page = Page.find_by(unique: params[:id])
end

但我无法弄清楚如何在创建动作结束时修复重定向

2 个答案:

答案 0 :(得分:0)

使用redirect_to resourcename_path(@object)

更详细

def create

@object = Model.new(params[:values])

if @object.save

  redirect_to resourcename_path(@object)
else
  render 'new'
end


end

答案 1 :(得分:0)

所以你可以做到

redirect_to :action => :show, :id => @page.unique

如果要从URL中省略controllername 你可以在routes.rb中创建一个匹配路由

get '/:id', to: 'pages#show', :as => :myurl