gpt4 book ai didi

ruby-on-rails - 在循环/迭代中从 Rails Helper 渲染 HAML

转载 作者:数据小太阳 更新时间:2023-10-29 08:40:10 24 4
gpt4 key购买 nike

我在 rails 的帮助器中有以下代码:

def custom_options_tag(opts={})
['am', 'pm'].each do |meridian|
["12", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11"].each do |time|
if @event.send(opts[:method], opts[:arg]) == time.to_s + meridian
engine = Haml::Engine.new("%option{:value => human_time, :selected => 'selected'}= human_time")
else
engine = Haml::Engine.new("%option{:value => human_time}= human_time")
end
engine.render(Object.new, :human_time => time.to_s + meridian)
end
end
end

我的问题是...这段代码如何在我的 View 中呈现?似乎没有办法呈现在辅助方法中经过循环的 haml 代码。

为了简化事情,我尝试将一个段落渲染 3 次...

def some_paragraph_helper
3.times do
engine = Haml::Engine.new("%p Some paragraph from helper")
engine.render
end
end

当我调用方法时...

some_paragraph_helper

...它输出的不是文本,而是不带段落标记的数字“3”。请注意,它只显示一次数字“3”……就好像它没有经过循环一样。

感谢您的帮助。

唱片

最佳答案

你需要返回engine.render的结果

def some_paragraph_helper
result = ""
3.times do
engine = Haml::Engine.new("%p Some paragraph from helper")
result << engine.render
end
result
end

关于ruby-on-rails - 在循环/迭代中从 Rails Helper 渲染 HAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9623020/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com