Ruby on Rails - 具有部分视图的实例变量的范围

ste*_*ard 3 scope ruby-on-rails partial-views

我不明白如何使用部分视图正确使用实例变量,我希望有人在这里可以启发我.例如:

class MainController < ApplicationController

  def index
    @item_list = Item.find_all_item
  end

  def detail_display
    @current_selected = @item= Item.find(params[:id])
      redirect_to :action => :index
  end
end
Run Code Online (Sandbox Code Playgroud)

detail_display当用户单击列表中的项目时调用.@current_selected当索引重定向到时,该变量不可用于调用的部分视图.我该如何解决这个问题?

谢谢

Jim*_*uls 8

当您进行重定向时,浏览器会发送一个全新的请求,因此上一个请求中的所有数据都是不可访问的.你可能不希望在这里进行重定向; 当您通过控制器查看单独的运行时,没有任何范围可以帮助您.

想想你的设计 - 你想做什么?如果选择是粘性的,也许应该进入会话.如果更改只是部分更改,则可能应该使用Ajax调用.也许解决方案就像渲染index模板一样简单,而不是重定向到index动作.