4
我正在基於此創建日曆視圖Railscast tutorial。在本教程中,:published_on字段是日期字段。我的問題是,如果:published_on是日期時間字段而不是日期字段,我將如何調整下面的代碼以使其工作?Ruby on Rails - 將日期時間哈希轉換爲日期
遷移
t.date :published_on
控制器:
def index
@articles = Article.all
@articles_by_date = @articles.group_by(&:published_on)
@date = params[:date] ? Date.parse(params[:date]) : Date.today
end
查看:
<div id="articles">
<h2 id="month">
<%= link_to "<", date: @date.prev_month %>
<%= @date.strftime("%B %Y") %>
<%= link_to ">", date: @date.next_month %>
</h2>
<%= calendar @date do |date| %>
<%= date.day %>
<% if @articles_by_date[date] %>
<ul>
<% @articles_by_date[date].each do |article| %>
<li><%= link_to article.name, article %></li>
<% end %>
</ul>
<% end %>
<% end %>
</div>
不只是'@date = params [:date]? DateTime.parse(params [:date]):DateTime.today'工作? – grilix 2012-08-15 12:58:19
爲什麼不進行調整就無法正常工作? – 2012-08-15 12:59:14
@grilix - 爲DateTime:Class'錯誤提供了一個'未定義的方法'。 @Christoph - 沒有調整就沒有錯誤,但它不會在日曆中顯示任何數據。但是,如果將其更改爲日期字段,則會正確顯示數據。 – diasks2 2012-08-15 13:10:19