在触发 Model.find_by_sql 后;
data = Setup::Type.find_by_sql ["SELECT value FROM table WHERE type_cd = 'print_format' AND subtype_cd = 'schedule_print_format'"]
对象返回为;
#<Setup::Type:0x60c42f0>
#<Setup::Type:0x60c4140>
#<Setup::Type:0x60c3f90>
在对数据使用“检查”功能时,它会重新运行
[#<Setup::Type value: "SalesReceipt_Bhindi_sch.rpt">, #<Setup::Type value: "SpecialOrder_Bhindi_sch.rpt">, #<Setup::Type value: "ReturnReceipt_Bhindi_sch.rpt">, #<Setup::Type value: "Takepayment_Bhindi_sch.rpt">]
在使用 data.class 时,它返回 Array。
但是,据我推测,这在用作“哈希”时效果很好,
data.each do |name|
xml = Hpricot::XML(%{
<params>
<from_trans_date>#{date_for_transaction}</from_trans_date>
<to_trans_date>#{date_for_transaction}</to_trans_date>
<print_format>#{name.value}</print_format>
<company_id>#{company_id}</company_id>
</params>
})
我的问题是,为什么“数据”的行为就像一个哈希,根据像“name.value”这样的实现。
谢谢