1
我首次安裝了Searchkick和Elasticsearch。使用Searchkick和Elasticsearch加亮
我有基本的工作,並試圖包括highlight功能。
指數:
<%= form_tag books_path, method: :get do %>
<%= text_field_tag :q, nil %>
<% end %>
<div class="row">
<div class="col-md-8">
<% @books.each do |book| %>
<div class="media">
<div class="media-body">
<h4 class="media-heading">
<%= link_to book.title, book %>
</h4>
<small>
<%= book.description %>
</small></br>
<% if policy(book).edit? %>
<%= link_to 'Edit', edit_book_path(book) %>
<% end %>
</div>
</div>
<% end %>
<%= paginate @books %>
</div>
<div class="col-md-4">
<% if policy(Book.new).create? %>
<%= link_to "New Book", new_book_path, class: 'btn btn-success' %>
<% end %>
</div>
</div>
控制器
def index
query = params[:q].presence || "*"
@books = Book.search(query, field: [:title], highlight: {tag: "<strong>"})
authorize @books
end
型號
class Book < ActiveRecord::Base
require 'elasticsearch/model'
searchkick highlight: [:title, :description]
我缺少什麼?
您的解決方案工作完美。感謝您的詳細描述。 – codingbear