TrestleAdmin / trestle-search

Search plugin for the Trestle admin framework

Home Page:https://trestle.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Trestle Search (trestle-search)

Search plugin for the Trestle admin framework

Getting Started

These instructions assume you have a working Trestle application. To integrate trestle-search, first add it to your application's Gemfile:

gem 'trestle-search'

Run bundle install, and then restart your Rails server.

To enable search capabilities within an admin resource, define a search block:

Trestle.resource(:articles) do
  search do |query|
    if query
      Article.where("title ILIKE ?", "%#{query}%")
    else
      Article.all
    end
  end
end

The search block accepts one or two parameters; the first is the string value of the search query. The second, optional parameter is the full params hash. The block should return a chainable scope.

The search block overrides the default (or custom) collection block. However the original collection block can be called to avoid redefining scopes. For example:

Trestle.resource(:articles) do
  collection do
    Article.order(created_at: :desc).includes(:author)
  end

  search do |q|
    q ? collection.where("title ILIKE ?", "%#{q}%") : collection
  end
end

Integration Examples

  1. ActiveRecord (ILIKE)
  2. PgSearch
  3. Chewy
  4. Sunspot

License

The gem is available as open source under the terms of the LGPLv3 License.

About

Search plugin for the Trestle admin framework

https://trestle.io

License:GNU Lesser General Public License v3.0


Languages

Language:Ruby 77.8%Language:HTML 14.5%Language:JavaScript 4.5%Language:CSS 1.8%Language:SCSS 1.5%