Rails-循环不打印液体模板中的数据

Saa*_*dia 5 ruby-on-rails liquid

我从数据库中提取了一些如下所示的记录,并为其分配了一个名为 users

[#
<User id: 53433, first_name: "Héctor", last_name: "Pinzon">,
<User id: 53434, first_name: "Héctor 2", last_name: "Pinzon 2">,
]
Run Code Online (Sandbox Code Playgroud)

在液体内部,我想通过循环遍历它们

{% for user in users %}
{{ user.first_name }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

当我收到first_name应该出现的电子邮件时,它会打印出来

 Liquid error: internal 
 Liquid error: internal
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么?为什么users不显示来自的数据?

Bai*_*aig 4

无论您在何处传递users到液体模板,都需要更改它以users.map(&:attributes)使其采用正确的格式,我们不能只传递对象users。进行此更改后,以下循环将很好地呈现数据。

{% for user in users %}
{{user.first_name }} {{user.last_name }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)