我需要在从Android应用程序收到一些数据后立即刷新HTML视图。我从我的Android应用程序获取项目列表。一旦项目存储在我的数据库中,我就需要使用收到的项目列表刷新摘要视图。我的问题是我无法自动执行此过程。就像我输入网址一样,我的视图完全显示内容。但每次收到项目列表时,我都需要手动刷新以从DB获取更新的项目列表。我使用<meta http-equiv="refresh" content="5" />
刷新页面,这也很好,但我只需要在收到新项目并存储在DB中时才刷新。下面是我的列表控制器中的控制器代码,我保存收到的项目
def create
lists = params[:list].collect{|list_attributes| List.new(list_attributes)}
valid,not_valid = lists.partition{|list| list.valid?}
if not_valid.blank?
lists.map(&:save)
@lists = lists
format.html { redirect_to @list, notice: 'List was successfully created.' }
format.json { render json: @list, status: :created, location: @list }
else
format.html { render action: "new" }
format.json { render json: @list.errors, status: :unprocessable_entity }
end
end
我必须在项目保存在数据库中时刷新视图,即在上面的代码中@lists = lists
之后。我阅读了很多教程,并了解我不应该使用渲染,因为我必须调用不同的控制器而不调用此控制器的方法。我尝试使用redirect_to,如下所示;
@lists = lists
@summary = summary_controller.new
redirect_to @summary
摘要是显示视图的控制器(我试图从列表控制器调用)但它给出错误。我也尝试了更多选项,但无法识别摘要控制器名称。
我是rails的新手并尝试了类似帖子中提出的许多内容,但都没有工作。好像我缺少某些东西或无法理解调用不同控制器的概念。请指教。感谢。