1

我有一个“创建”函数,它将重定向到一个名为“视图”的新视图。“view”使用get方法,所以需要在url中提供参数。

“创建”创建一个新项目 123,并使用 url 重定向/呈现“视图”/view?id=123 我还想在重定向到这个视图时传递一些额外的参数,/view?id=123&note=duplicate

我该怎么做呢?

  def create   
    @i = Book.createNewItem(params[:name])
    if @i[:error] == ""
      render action: 'view',
    else
      redirect_to book_home_path
    end
  end

  def view
    Book.getItem(params[:id]) #some backend update stuff
    @i = Book.find_by_book_num(params[:id])
    return @i
  end
4

3 回答 3

1

您可以使用

    render :action=>'view', :id=>123, :note=>"duplicate"

这将自动生成 'get' url 以查看操作,如下所示:

    "/view?id=123&note=duplicate"
于 2014-01-18T06:03:40.430 回答
0

你可以把它当作简单的

 redirect_to "/view?id="+@i+"&note=duplicate"

试试看...

于 2012-04-17T08:50:21.870 回答
0

您可以在哈希中传递其他参数,像这样传递给 url 助手:

redirect_to book_view_path(id: @i.id, note: 'duplicate')

或者

redirect_to action: "view", id: 5, note: 'duplicate'
于 2012-04-17T08:43:02.357 回答