我是Rails新手。
我已经创建了一个简单的rails页面,它接受book, title和publisher
rails生成脚手架书bookid:string title:string publisher:string
我写了一个新的search.html.erb,并给它定义了一个按标题搜索图书的定义。
现在我的问题是我如何给出一个自定义消息,如果书的细节不存在于数据库。
示例:我给的书名为rails,它在我的数据库中没有任何条目
它应该显示消息No Such Books
您可以这样做:
# controller
def search
@books = Book.where('title ilike ?', "%#{params[:title]}%")
end
# view
<% if @books.present? %>
Some code with your books
<% else %>
No such books
<% end %>
这里您将给定的title参数替换为查询,并将找到的图书分配给@books。然后在视图中使用这个变量。
不完全清楚要在哪里显示,但是像这样…
在你的控制器中:
@book = Books.find(params[:book_id])
if @book
@msg = "Book found"
else
@msg = "No Such Books"
end
在你看来:
<%= @msg =>