我正在为我的博客做档案,实际上我因为要求而从铁路转到sinatra。我正在尝试同样的Sinatra
在我的app.rb中:
def index
@posts = Post.all(:select => "title, id, created_at", :order => "created_at DESC")
@post_months = @posts.group_by { |t| t.created_at.beginning_of_month }
end
并在Layout.erb中:
<div class="archives">
<h2>Blog Archive</h2>
<% @post_months.sort.reverse.each do |month, posts| %>
<h3><%=h month.strftime("%B %Y") %></h3>
<ul>
<% for post in posts %>
<li><%=h link_to post.title, post_path(post) %></li>
<% end %>
</ul>
<% end %>
有谁能帮助我如何为sinatra做这件事?我正在尝试相同的代码,我得到这个:未定义的方法`sort'为nil:NilClass
答案 0 :(得分:0)
您没有使用Sinatra的表示法来定义动作。而不是:
def index
# your code...
end
您需要定义如下操作:
get '/' do
# your code...
end
您应该在继续之前阅读此内容:http://www.sinatrarb.com/intro.html