Ruby on rails 动态地将哈希值传递给部分
我遇到了一个问题,就是如何将散列值动态地传递给部分文件。我在我的页面上显示了人名(这是一部分)。哈希值如下所示:Ruby on rails 动态地将哈希值传递给部分,ruby-on-rails,ruby,hash,render,partials,Ruby On Rails,Ruby,Hash,Render,Partials,我遇到了一个问题,就是如何将散列值动态地传递给部分文件。我在我的页面上显示了人名(这是一部分)。哈希值如下所示: names[1] = "James" names[2] = "Williams" names[3] = "Jack" render :partial => "list", :locals => {:names => names} names[21] = 'Flink' names[81] = 'Mark' 我需要动态地传递散列值。我该怎么做
names[1] = "James"
names[2] = "Williams"
names[3] = "Jack"
render :partial => "list", :locals => {:names => names}
names[21] = 'Flink'
names[81] = 'Mark'
我需要动态地传递散列值。我该怎么做?在本例中,新哈希如下所示:
names[1] = "James"
names[2] = "Williams"
names[3] = "Jack"
render :partial => "list", :locals => {:names => names}
names[21] = 'Flink'
names[81] = 'Mark'
我的代码
类PrlcController<应用程序控制器
def棒
@names=Hash.new
@姓名[1]=“詹姆斯”
@姓名[2]=“威廉姆斯”
@姓名[3]=“杰克”
结束
def foo_ajax
@names=Hash.new
@姓名[21]=“弗林克”
@名称[81]=“标记”
结束
结束
bar.rhtml
----------
“列表”,:locals=>“{:names=>@names}”%>
“加载\u foo\u ajax\u数据”%>
函数加载\u foo\u ajax\u data(){
新的Ajax.Updater(“foo_Ajax_data”、“/Prlc/foo_Ajax”{
是的,
evalscript:对,
onComplete:函数(请求){
},
onload:函数(请求){}
});
}
foo_ajax.rhtml
--------------
这里有一些过程。
_list.rhtml
-----------
显示名称
尝试以下内容
class PrlcController < ApplicationController
def bar
@names = Hash.new
@names[1] = "James"
@names[2] = "Williams"
@names[3] = "Jack"
end
def foo_ajax
@names = Hash.new
@names[1] = 'Flink'
@names[2] = 'Mark'
render :update do |page|
page.replace_html 'foo_ajax_data', :partial => "list", :object => [@names]
end
end
end
class-PrlcController“list”,:object=>[@names]
结束
结束
结束
bar.rhtml
“list”,:locals=>“{:names=>@names}”%>
{:action=>“加载\u foo\u ajax\u数据”}%>
需要“动态传递哈希值”是什么意思?如果你不编造行话会有帮助的。是的@coreyward。我需要将散列值动态地传递给部分文件。这个散列值何时会动态变化?在我的页面中,我调用了一个AJAX,当它完成时,散列值将发生变化。因此,我需要立即更新名称列表。您需要的是重新加载它-如果您使用rjs,可能使用类似“page.replace_html”的东西就可以了。谢谢@sail。但是,这不是我的答案。我需要用foo_ajax.rhtml文件更新[id]foo_ajax_数据。“:partial=>list..”是单独的部分。当foo_ajax调用完成后,更新清单部分。