2012-04-08 107 views
2

我的控制文件參數通道看起來是這樣的:Ruby on Rails的redirect_to的工作不

class QuotesController < ApplicationController 

    def show 
    @quote = Quote.find(params[:id]) 
    @popup = params[:popup] 

    respond_to do |format| 
     if @popup.present? 
     format.html { render layout: false } 
     else 
     format.html 
     end 
     format.json { render json: @quote } 
    end 
    end 

    def create  
    @quote = Quote.new(params[:quote]) 
    respond_to do |format| 
     if @quote.save 
     format.html { redirect_to @quote, notice: "Quote was successfully created.", popup: "1" } 
     format.json { render json: @quote, status: :created, location: @quote } 
     else 
     format.html { render action: "errors", layout: false } 
     format.json { render json: @quote.errors, status: :unprocessable_entity } 
     end 
    end 
    end 

end 

如果我訪問http://localhost:3000/quotes/1?popup=1 - 沒有application_layout

視圖顯示正確但是,如果我從新建到來行動,它似乎?popup = 1永遠不會被追加到URL - 因此,application_layout顯示時,它不應該是

我認爲向redirect_to行添加彈出:「1」應該傳遞一個參數通過GET

任何人都可以看到我失蹤了嗎?

感謝

回答

0

編輯:想這在我的機器上,並且它的工作:

{ redirect_to quote_path(@quote, :popup => "1"), notice: "Quote was successfully created." }

+0

沒有錯誤,但仍然沒有通過參數,我使用Rails 3.2如果有幫助 – samJL 2012-04-08 22:35:49

+0

@samJL編輯我的答案! – TheDude 2012-04-09 03:26:51

+0

@samJL讓我知道如果我更新的答案工作! – TheDude 2012-04-09 17:03:24

0

嘗試@quote_url(:popup=>1)我想它會工作。

+0

生成語法錯誤,我也試過@quote_path。 – samJL 2012-04-08 22:38:05

相關問題