Screencast: ElasticSearch Teil 1

ElasticSearch ist eine auf Lucene basierende Suchmaschine. ElasticSearch bietet eine RESTfull Schnittstelle um Suchanfragen zu stellen. Ryan zeigt in diesem ersten Teil wie es in bestehende Applikationen integriert werden kann.

 

Downloads in verschiedenen Formaten:

mp4
m4v
webm
ogg

 

Resourcen:

bash

[bash]
brew install elasticsearch
elasticsearch -f -D es.config=/usr/local/Cellar/elasticsearch/0.18.5/config/elasticsearch.yml
rake db:setup
[/bash]

Gemfile

[ruby]
gem ‚tire‘
[/ruby]

articles_controller.rb

[ruby]
def index
@articles = Article.search(params)
end
[/ruby]

models/article.rb

[ruby]
include Tire::Model::Search
include Tire::Model::Callbacks

def self.search(params)
tire.search(load: true) do
query { string params[:query], default_operator: "AND" } if params[:query].present?
filter :range, published_at: {lte: Time.zone.now}
end
end
[/ruby]

articles/index.html.erb

[html]
<%= form_tag articles_path, method: :get do %>
<p>
<%= text_field_tag :query, params[:query] %>
<%= submit_tag "Search", name: nil %>
</p>
<% end %>
[/html]

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.