2
我使用續集。 在我app.rb,我寫我的博客與紅寶石和sinatra的簡單搜索表單
get '/search' do
@post = Post.find(:Title => "%#{params[:query]}%")
erb :'layout'
end
Layout.erb
<form action="/search" method="get">
<input type="text" name="query"/><br />
<input type="submit" />
</form>
<% if @results %>
<table>
<%@results.each do |r|%>
<tr valign="top">
<td><%=r.title%></td>
</tr>
<%end%>
</table>
<% end %>
而到了blog_model.rb在Post類這樣的:
def self.search(query)
#where(:title, query) -> This would return an exact match of the query
where("title like ?", "%#{query}%")
end
而且我得到這個:LocalJumpError在/ search 沒有給出塊(yield)。 那麼該做什麼或者我做了這個代碼是否正確?提前致謝。
你能不能從日誌後整個錯誤訊息嗎?你也向我們展示了search()方法,你甚至都沒有在任何地方使用,你也使用'find()'你應該在你的第一個片段中使用'where()'。 –