我有一个更大的方法,我想使用其中的一部分来获取数组值并将它们插入到链接中。我正在使用该方法在我正在自定义的应用程序的元数据中生成链接字段。完整的方法如下:
def get_facet_from_datastream(resource, datastream_name, field_key, opts={})
if opts.has_key?(:values)
values = opts[:values]
if values.nil? then values = [opts.fetch(:default, "")] end
else
values = resource.get_values_from_datastream(datastream_name, field_key, opts.fetch(:default, ""))
if values.empty? then values = [ opts.fetch(:default, "") ] end
end
facet = field_key.to_a.join("_") + "_facet"
values.each do |v|
searchv = v.to_s.gsub(/ /, "+")
link = "<a href=\"http://development4/lcdl/catalog?f[#{facet}][]=#{searchv}\">#{v}</a>"
return link.html_safe
end
end
我在“ values.each do
”部分遇到问题。返回链接适用于数组中的第一个值,但会停止。我最喜欢的是每个链接后跟一个换行符,但我显然混淆了语法。
我希望这是有道理的。