Rails应用程序自动呈现ActiveRecord对象

时间:2016-11-05 17:38:55

标签: ruby-on-rails

我有一个rails应用程序,数据库包含种子对象。当我在视图中访问它们时,所有这些都打印在页面的底部。还有其他人遇到过这个问题吗?

以下是视图中的代码:

<%= @articles.each do |article| %>
<h2><%= link_to "#{article.title}", title_path(article.index), {class: "link"} %></h2>
<p><%= article.text[0..article.text.index('.')] + "..." %></p>

以下是渲染的内容(蓝色链接和下面的行应该呈现,但随后所有播种的文章都会呈现):

1 个答案:

答案 0 :(得分:1)

此行中有错误

<% @articles.each do |article| %>

'='字符输出该行的结果。如果没有'='字符,则会在不打印的情况下评估代码。删除'=',你不应该看到@articles变量的输出。

>>> from pomodoro.models import Chunk, Result
>>> Chunk.objects.all()
<QuerySet [<Chunk: Onboard State Estimation>, <Chunk: Newton's 2nd Law of Motion>, <Chunk: IF>]>
>>> a = []
>>> for q in Chunk.objects.all(): a += q.topic
...
>>> a
['R', 'o', 'b', 'o', 't', 'i', 'c', 's', 'M', 'e', 'c', 'h', 'a', 'n', 'i', 'c', 's', 'L', 'o', 'g', 'i', 'c']
>>> ose = Chunk.objects.get(pk=1)
>>> ose.topic
'Robotics'

This question可能会有所帮助。