Skip to content
Newer
Older
100644 67 lines (44 sloc) 2.17 KB
a038098 @parndt Not really needed
parndt authored
1 # Search plugin for [Refinery CMS](http://www.refinerycms.com)
45ec12c Added Readme
Amanda Nicholas authored
2
a038098 @parndt Not really needed
parndt authored
3 Powered by: [acts_as_indexed](http://github.com/dougal/acts_as_indexed) -
4 Check his readme and documentation for more info on how it works.
86e8f9f @joemsak Give credit to the gem and point people there for more info & help on…
joemsak authored
5
a8e679d @parndt Converted to a Rails3/Refinery CMS engine.
parndt authored
6 ## Installation
45ec12c Added Readme
Amanda Nicholas authored
7
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
8 Simply use this by adding the following to your `Gemfile`:
45ec12c Added Readme
Amanda Nicholas authored
9
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
10 ```ruby
48ec08d Updating Git Location
Andrew Hooker authored
11 gem 'refinerycms-search', '~> 2.0.0', :git => 'git://github.com/refinery/refinerycms-search.git', :branch => '2-0-stable'
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
12 ```
45ec12c Added Readme
Amanda Nicholas authored
13
aa535af @ugisozols Update readme.
ugisozols authored
14 ## RE-SAVE all records that have not been indexed before.
45ec12c Added Readme
Amanda Nicholas authored
15
bafe958 @ugisozols Fix typo in readme.
ugisozols authored
16 A sample search form can be found in [views/refinery/shared/_search.html.erb](http://github.com/resolve/refinerycms-search/blob/master/app/views/refinery/shared/_search.html.erb).
a8e679d @parndt Converted to a Rails3/Refinery CMS engine.
parndt authored
17 You can either use this partial directly, or copy the appropriate parts.
45ec12c Added Readme
Amanda Nicholas authored
18
a8e679d @parndt Converted to a Rails3/Refinery CMS engine.
parndt authored
19 ## Searching
45ec12c Added Readme
Amanda Nicholas authored
20
25a5024 @parndt Let's try a different approach which is far more likely to work :-)
parndt authored
21 The default installation will search in Pages.
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
22 If you wish to find results in other plugins you have created or installed, you can specify these in `config/application.rb` like so:
45ec12c Added Readme
Amanda Nicholas authored
23
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
24 ```ruby
25 config.to_prepare do
26 Refinery.searchable_models = [Refinery::Page]
27 end
28 ```
45ec12c Added Readme
Amanda Nicholas authored
29
30 Simply add any additional models you wish to search to this array. For example, if you have the [portfolio plugin](http://github.com/resolve/refinerycms-portfolio) installed:
31
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
32 ```ruby
33 config.to_prepare do
34 Refinery.searchable_models = [Refinery::Page, Refinery::PortfolioEntry]
35 end
36 ```
eed054b @joemsak These changes help it work in Rails3 RefineryCMS acceptably.
joemsak authored
37
14c27f3 @joemsak Helpful tips in the README
joemsak authored
38 The above line will add indexing to PortfolioEntry in the portfolio plugin, which does not come indexed.
39
a8e679d @parndt Converted to a Rails3/Refinery CMS engine.
parndt authored
40 Any model you wish to search will need to be indexed using acts as indexed. To add indexing, simple add:
45ec12c Added Readme
Amanda Nicholas authored
41
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
42 ```ruby
43 acts_as_indexed :fields => [:title, :body]
44 ```
45ec12c Added Readme
Amanda Nicholas authored
45
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
46 If your model doesn't use a `:title` attribute, remember to add an `alias_attribute`:
284cb30 @joemsak README updated with a couple of friendly reminders
joemsak authored
47
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
48 ```ruby
49 alias_attribute :title, :name #for example
50 ```
284cb30 @joemsak README updated with a couple of friendly reminders
joemsak authored
51
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
52 You can use any public method, as well. So if you have `:first_name` and `:last_name` but a method like `name` to join them, it can be indexed.
25a5024 @parndt Let's try a different approach which is far more likely to work :-)
parndt authored
53
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
54 ```ruby
55 acts_as_indexed :fields => [:name, :biography]
25a5024 @parndt Let's try a different approach which is far more likely to work :-)
parndt authored
56
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
57 #...
25a5024 @parndt Let's try a different approach which is far more likely to work :-)
parndt authored
58
5aef6f9 @parndt Updated readme to have syntax highlighting and to recommend installin…
parndt authored
59 def name
60 [first_name, last_name].reject(&:blank?).join(' ')
61 end
62 ```
14c27f3 @joemsak Helpful tips in the README
joemsak authored
63
a8e679d @parndt Converted to a Rails3/Refinery CMS engine.
parndt authored
64 You will need to replace the indexed fields with those appropriate for your model.
14c27f3 @joemsak Helpful tips in the README
joemsak authored
65
2e2e2cf @parndt Merge branch '2-0-stable'
parndt authored
66 If you wish to override the url used in the search results just add a `url` method to your model and the result of this method will be used instead.
Something went wrong with that request. Please try again.