【发布时间】:2020-12-10 03:36:14
【问题描述】:
我在一个项目中工作,我想根据与海关查询的关联动态创建小部件,并设置液体以自定义小部件的外观和感觉。我能够设置液体,但是当我尝试使用 for 循环进行迭代时,我无法获取值,但如果我将对象称为字符串,那么我能够获取它:{"netsales"=>42410110.43}
型号:
class Widget < Accpac::Sqlserver::Base
validates :name, :description, :template, presence: true
belongs_to :user
has_many :widget_queries, dependent: :destroy
has_many :queries, through: :widget_queries
def to_liquid
{
'query_list' => query_list
}
end
def query_list
@result = ActiveRecord::Base.connection.exec_query(queries.map(&:statement).join(""))
@result.to_a.join("")
end
end
查看:
<div class="row">
<div class="col-lg-12">
<div class="wrapper wrapper-content animated fadeInUp">
<div class="ibox">
<div class="ibox-content">
<div class="row">
<%= Liquid::Template.parse(@widget.template).render('widget' => @widget) %>
</div>
</div>
</div>
</div>
</div>
</div>
小部件模板:
{% for q in widget.query_list %}
{{ q.netsales }}
{% endfor %}
# Output blank
【问题讨论】:
标签: ruby-on-rails liquid