使用.erb发布与Sinatra显示日期的问题

时间:2017-02-21 07:43:14

标签: ruby sinatra erb

我正在使用ruby .erb在div的跨度中显示时间。但是,使用类似日期的东西是行不通的。

<div id="comment_space">
  <% @post.comments.each_with_index do |comment,date,posted,index| %> 
    <span class="above"><%= date = ('%Y-%m-%d') %> </span> 
    <div   class="comment"     id="msg_<%= index+1 %>"> 
      <%= comment.usr_comment %>
      <span class="right">
        <%= comment.created_at.localtime.strftime("%l: %M %p") %>
      </span> 
    </div>
  <% end %>
  <span class="above">
    <%= date = ('%Y-%m-%d') %> 
  </span> 

这是不起作用的部分。但是

<span class="right">
  <%= comment.created_at.localtime.strftime("%l: %M %p") %>
</span>

完美无缺。

第一个错误是&#34; created_at&#34;没有被约会,它已经从那里下山了。日期和时间在Javascript中定义,并在Ruby ActiveRecord表中使用时间戳。

1 个答案:

答案 0 :(得分:0)

<%= date = ('%Y-%m-%d') %>  # Ehhhhhm

好的,将其与您的其他方式进行比较。

<%= comment.created_at.localtime.strftime("%l: %M %p") %>

看到区别? 如果“日期”是Date类,您可以执行以下操作:

<%= date.strftime('%Y-%m-%d') %>

它应该没有任何问题。

如果你做了你做的事,你说日期现在是'%Y-%m-%d'

date = ('%Y-%m-%d')
# => "%Y-%m-%d"