我不确定我在这里做错了什么,但我的索引操作是直接从每个记录下面的数据库返回一堆信息:
First Post!!!
Hello. This is my first blog post
[#<Post id: 1, user_id: nil, title: "First Post!!!",
content: "Hello. This is my first blog post", created_at: "2016-02-26 20:51:57",
updated_at: "2016-02-26 20:51:57">]
的index.html
= for p in @posts
%h1
= p.title
%p
= p.content
答案 0 :(得分:0)
问题在于,当您使用for
时,您正在评估并输出=
haml,在erb中使用<%= %>
是相同的,这意味着您的代码将是在评估后输出,这就是您从数据库中看到该信息的原因。
要解决您的问题,只需使用&#34;评估员&#34; haml中的标记为-
,它相当于erb中的<% %>
,这意味着您的代码只会被评估,不会向屏幕打印任何信息。
另外,当在rails中循环对象时,不要使用for
,请使用以下迭代器:@posts.each do |p|
而不是for
循环。