这是微博视图的相关部分。.
<li>
<span class="content"><%= micropost.content %></span>
<span class="product"><%= micropost.product %></span>
<span class="price"><%= micropost.price %></span>
<span class="location"><%= micropost.location %></span>
<span class="timestamp">
Posted <%= time_ago_in_words(micropost.created_at) %> ago.
</span>
<% if current_user?(micropost.user) %>
<%= link_to "delete", micropost, method: :delete,
confirm: "You sure?",
title: micropost.content %>
<% end %>
我最近在 micropost 表的列中添加了产品、价格和位置。我检查了数据库,这些方面正在被记录/写入,但由于某种原因,内容是唯一显示在应用程序上的内容。为什么其他人被排除在外?
这是生成的 HTML。我假设这是相关部分。如您所见,产品、价格和位置的 html 永远不会生成。
<li id="1">
<a href="/users/1"><img alt="alex" class="gravatar" src="http://gravatar.com/avatar/a6759dcef8e5aad4e77509e5479b9823.png?s=50" /></a>
<span class="user">
<a href="/users/1">alex</a>
</span>
<span class="content">first</span>
<span class="timestamp">
Posted less than a minute ago.
</span>
<a href="/microposts/1" data-confirm="You sure?" data-method="delete" rel="nofollow" title="first">delete</a>
</li>
我不认为这是 attr_accessor 和 attr_accessible 之间的区别,因为内容是 attr_accessor 并且它会显示出来。另外,我读到了差异,这里似乎不相关。我相信 attr_accessible 是正确的。另外,我尝试将其更改为 attr_accessor 并没有用。还有其他想法吗?谢谢,麻烦您了!