rails使用特定动词重定向或呈现

时间:2011-05-25 10:47:11

标签: ruby-on-rails-3 httpverbs

我想在创建新项目时重定向到资源索引

这是控制器的一部分:

def create
    @asset = Asset.new(params[:asset])
    @assets = Asset.all
    respond_to do |format|
      if @asset.save
        format.html { render :action => 'index' } ##########
        format.xml  { render :xml => @asset, :status => :created, :location => @asset }
      else
        format.html { render :action => "new" }
        format.xml  { render :xml => @asset.errors, :status => :unprocessable_entity }
      end
    end
  end

我感兴趣的行标记为##########

我试过

  format.html { redirect_to(assets_url) }

和其他一些东西

它重定向到正确的位置并创建项目正常,问题是我不能得到它POST。我需要把它带到GET,因为否则它会对我的观点做一些可怕的事情。

1 个答案:

答案 0 :(得分:0)

redirect_to :action => :indexredirect_to assets_url应该适合您。此外,index操作始终是GET请求。请rake routes查看控制器中每个操作发生的请求类型。