我正在构建一个小应用程序,用户可以在文本框中输入内容,按Enter键,然后输入的字符串将记录在文本框下方的部分中。
此人输入的内容(名为Lessons
)显示在页面底部,代码如下。
<% @allLessons.each do |lesson| %>
<tr>
<td class="my-lessons">
<b><%= lesson.content %></b> – <%= lesson.created_at.strftime("%b %d, %Y") %>
<br />
</td>
</tr>
<% end %>
我正在尝试编写一些查看每节课日期的内容,如果该日期大于前一天的日期,则会在输出的条目之间插入换行符。
我对如何做到这一点非常困惑。最好是在home.html.erb
中完成所有嵌入式Ruby,还是使用pages controller
来帮助这里?
答案 0 :(得分:0)
要扩展上一个答案,lesson.created_at.strftime("%Y%m%d").to_i > previous_lesson_date.strftime("%Y%m%d).to_i
之类的内容可以解决上述问题,假设lesson.created_at
和previous_lesson_date
都是正确的时间对象。
可能有更直接的解决方案可以更好地利用Time对象。
答案 1 :(得分:-1)
类似的东西:
<% @allLessons.each do |lesson| %>
<% previous_lesson_date = lesson.created_at %>
<tr>
<td class="my-lessons">
<b><%= lesson.content %></b> – <%= lesson.created_at.strftime("%b %d, %Y") %>
<% if lesson.created_at > previous_lesson_date %>
<br />
<% end %>
</td>
</tr>
<% end %>
是字面答案吗?由于当前课程几乎总是有一个更大的日期(因为它将在几秒钟后创建)。我想你可能需要使用Rails日期函数来获得你真正想要的东西。