railstutorial.org第11课:time_ago_in_words不发布时间

时间:2011-06-27 14:48:56

标签: ruby-on-rails-3 railstutorial.org

在本教程的第11课中工作,我运行db:populate为前6位用户显示50个微博

但是在浏览器页面上看到它在所有微博上都说“已发布”

在micropost.html.erb文件中:

<tr>
    <td class="micropost">
      <span class="content"><%= micropost.content %></span>
      <span class="timestamp">
        Posted <%= time_ago_in_words(micropost.created_at) %> ago.
      </span>
    </td>
</tr>

任何想法?

更新1:

尝试试错,当我改变之前。对agooooo。只是为了看它是否在浏览器上发生了变化...它没有...我重新启动了autotest,spork和rails s以查看是否会显示已发布的agoooooo。并没有任何变化只是举行“发布前。”

更新2:

如果您需要查看我的show.html.erb文件

<table class="profile" summary="Profile information">
    <tr>
        <td class="main">
            <h1>
                <%= gravatar_for @user %>
                <%= @user.name %>
            </h1>
            <% if @user.microposts.any? %>
                <table class="microposts" summary="User microposts"> 
                    <%= render @microposts %>
                </table>
                <%= will_paginate @microposts %>
            <% end %>
        </td>
        <td class="sidebar round"> 
            <strong>Name</strong> <%= @user.name %><br />
            <strong>URL</strong> <%= link_to user_path(@user), @user %> <br />
            <strong>Microposts</strong> <%= @user.microposts.count %>
            </td>
    </tr>


</table>

更新3:

添加帮助。之前可能会工作,但我很困惑,为什么当我改变发布或以前不同的话他们根本没有在浏览器上改变...什么是发送完全刷新的最佳方式,所以服务器看到这些变化...尝试重新启动rails服务器,spork和自动测试

更新4:

我不知何故在不同的位置有2个_micropost.html.erb文件....解决问题现在会再次发布

更新5:

我的用户文件夹中有一个带有_micropost.html.erb文件的微博文件夹...我打开了

app =&gt;中正确的微博文件夹views =&gt;微博=&gt; microposts.html.erb在&lt;%=

中缺少a =

我一直在编辑错误的文件

至于添加助手。 - 它没有用,但它引导我解决问题 - 所以我认为这是我书中的解决方案!

非常感谢ardavis!

1 个答案:

答案 0 :(得分:1)

ruby-1.9.2-p180 :061 > helper.time_ago_in_words(u.created_at)
 => "11 days" 

看起来你需要在前面添加'helper'。

Check out this page。看起来他创建了自己的自定义方法来使其更好。可以帮到你。