Sha256: e77202ab2505406acbc57e56d6fe12fa0c486cab382b38b9c9431939b4c861ff

Contents?: true

Size: 1.2 KB

Versions: 54

Compression:

Stored size: 1.2 KB

Contents

require 'rubygems'
require 'bundler'
Bundler.require

# Load the "model".
#
require File.expand_path 'book', File.dirname(__FILE__)

set :haml, { :format => :html5 }

# Sets up two query instances.
#
BooksSearch = Picky::Client.new :host => 'localhost', :port => 8080, :path => '/books'

set :static, true
set :public_folder, File.dirname(__FILE__)
set :views,  File.expand_path('views', File.dirname(__FILE__))

# Root, the search interface.
#
get '/' do
  @query = params[:q]

  haml :'/search'
end

# For full results, you get the ids from the picky server
# and then populate the result with models (rendered, even).
#
get '/search/full' do
  results = BooksSearch.search params[:query], :ids => params[:ids], :offset => params[:offset]
  results.extend Picky::Convenience
  results.populate_with Book do |book|
    book.to_s
  end

  #
  # Or use:
  #   results.populate_with Book
  #
  # Then:
  #   rendered_entries = results.entries.map do |book| (render each book here) end
  #

  ActiveSupport::JSON.encode results
end

# For live results, you'd actually go directly to the search server without taking the detour.
#
get '/search/live' do
  BooksSearch.search_unparsed params[:query], :offset => params[:offset]
end

Version data entries

54 entries across 54 versions & 1 rubygems

Version Path
picky-generators-4.31.3 prototypes/client/sinatra/app.rb
picky-generators-4.31.2 prototypes/client/sinatra/app.rb
picky-generators-4.31.1 prototypes/client/sinatra/app.rb
picky-generators-4.31.0 prototypes/client/sinatra/app.rb
picky-generators-4.30.0 prototypes/client/sinatra/app.rb
picky-generators-4.28.1 prototypes/client/sinatra/app.rb
picky-generators-4.27.1 prototypes/client/sinatra/app.rb
picky-generators-4.27.0 prototypes/client/sinatra/app.rb
picky-generators-4.26.2 prototypes/client/sinatra/app.rb
picky-generators-4.26.1 prototypes/client/sinatra/app.rb
picky-generators-4.26.0 prototypes/client/sinatra/app.rb
picky-generators-4.25.3 prototypes/client/sinatra/app.rb
picky-generators-4.25.2 prototypes/client/sinatra/app.rb
picky-generators-4.25.1 prototypes/client/sinatra/app.rb
picky-generators-4.25.0 prototypes/client/sinatra/app.rb
picky-generators-4.24.0 prototypes/client/sinatra/app.rb
picky-generators-4.23.2 prototypes/client/sinatra/app.rb
picky-generators-4.23.1 prototypes/client/sinatra/app.rb
picky-generators-4.23.0 prototypes/client/sinatra/app.rb
picky-generators-4.22.0 prototypes/client/sinatra/app.rb