Ruby块打印/显示问题

时间:2018-08-20 04:30:10

标签: ruby-on-rails ruby

我是新手。我遵循的教程说,在块之间输入的所有内容都会被打印/显示。但是,我无法做到这一点。

https://www.youtube.com/watch?v=0OzDgi0zqJU

在3:49,他在块之间打印出您好或任何单词。我做错了什么,它不能打印出我在块之间输入的任何内容。

<h1>All Posts</h1>

<% @posts.each do |post|  %> 
  Hello or something else 
<% end %>

结果:所有帖子

1 个答案:

答案 0 :(得分:0)

我猜您的数据库中没有任何帖子(意味着@posts变量没有对象)。否则,对于每个帖子,您好或其他内容将打印在html中。

当您要在.erb中打印内容时,仅当您要显示从数据库/从控制器实例变量/从帮助程序文件中获取的内容时,才需要将其括在<%= %>中。

如果您像下面的代码那样循环遍历,则会得到不同之处:

<% 5.times do |t| %>
  Hello or something else
<% end %>

它将在html中打印Hello or something else五次。

比方说,您数据库中的 Post 表包含一些数据。所以,我们可以像下面这样:

<% @posts.each do |post| %>
  <%= post.title %> # I assumed your post model contains a title attribute
<% end %>