Hi Pat -
I have TS 2.0.7 and AR 3.1.0 and Sphinx 2.0.1beta
BTW, I have my Rakefile looking like this now which is helping to some
extent:
require 'thinking_sphinx'
require 'thinking_sphinx/tasks'
require 'active_support/core_ext/string'
Sinatra::Application.root = File.dirname(__FILE__)
Sinatra::Application.environment = "development"
I had to require the active_support stuff in order to use the camelize
and blank? methods that are called down in the TS library.
What I can't figure out is why the environment is always blank once it
gets down into the library. I ended up playing around down in lib/
thinking-sphinx/configuration.rb
Note that elsif defined?(Sinatra) is true so it drops down into the
puts "GOT HERE" i added but Sinatra::Application.environment.to_s is
an empty string. Can't figure that out yet so I just hardcoded the
return statement in order to get the config/development.sphinx.conf
file generated -otherwise it generates a file named
config/.sphinx.conf
def self.environment
return "development"
@@environment ||= if defined?(Merb)
Merb.environment
elsif defined?(Rails)
Rails.env
elsif defined?(Sinatra)
puts "GOT HERE: #{Sinatra::Application.environment.to_s}"
Sinatra::Application.environment.to_s
else
ENV['RAILS_ENV'] || 'development'
end
end
This is where I am currently as far as getting the files to generate:
macbook:autocomplete mengelhart$ rake ts:index
/Users/mengelhart/Development/sandbox/autocomplete/config/sphinx.yml
Generating Configuration to /Users/mengelhart/Development/sandbox/
autocomplete/config/development.sphinx.conf
Sphinx 2.0.1-beta (r2792)
Copyright (c) 2001-2011, Andrew Aksyonoff
Copyright (c) 2008-2011, Sphinx Technologies Inc (http://
sphinxsearch.com)
using config file '/Users/mengelhart/Development/sandbox/autocomplete/
config/development.sphinx.conf'...
FATAL: no indexes found in config file '/Users/mengelhart/Development/
sandbox/autocomplete/config/development.sphinx.conf'
The generated development.sphinx.conf file looks like:
indexer
{
}
searchd
{
listen = 127.0.0.1:9312
log = /Users/mengelhart/Development/sandbox/autocomplete/log/
searchd.log
query_log = /Users/mengelhart/Development/sandbox/autocomplete/log/
searchd.query.log
pid_file = /Users/mengelhart/Development/sandbox/autocomplete/log/
searchd.development.pid
}
My current theory is that somehow since this isn't an actual Rails app
that somehow TS doesn't know how to grab the AR connection to the
database?
Here's the single model I'm testing:
require 'thinking-sphinx'
class Location < ActiveRecord::Base
define_index do
indexes name
end
end
Any thoughts?
On Sep 7, 7:27 pm, Pat Allan <[email protected]> wrote:
> Hi Mike
>
> Which versions of Thinking Sphinx and ActiveRecord are you using?
>
> --
> Pat
>
> On 08/09/2011, at 7:56 AM, mikeee wrote:
>
>
>
>
>
>
>
> > I'm pretty sure after doing some more digging that the issue is that
> > RAILS_ROOT Is not defined anywhere in a Sinatra application. I just
> > tried putting a RAILS_ROOT constant into my Rakefile but that isn't
> > helping.
>
> > Let me know if anyone has any experience using TS and Sinatra.
> > Thanks!
>
> > On Sep 7, 8:05 am, mikeee <[email protected]> wrote:
> >> Hi -
>
> >> I found a gist on github regarding how to get Thinking Sphinx to work
> >> in a sinatra app using ActiveRecord and that seems like it will work
> >> but I'm having trouble setting up the application in order to allow me
> >> to run the rake tasks necessary to generate the required configuration
> >> files and the index.
>
> >> What appears to be happening when I try and run these tasks is that it
> >> seems like the rake task is trying to use a path of "/" for all the
> >> tasks. Here's the output I get when running ts:config
>
> >> macbook:autocomplete mengelhart$ rake ts:config
> >> Generating Configuration to /config/development.sphinx.conf
> >> rake aborted!
> >> No such file or directory - /config/development.sphinx.conf
>
> >> Tasks: TOP => ts:config => thinking_sphinx:configure
> >> (See full trace by running task with --trace)
>
> >> Note the /config/ path that it's trying to use. Maybe I'm not
> >> understanding the output correctly though.
>
> >> I have my model in app/models in my sinatra application directory as
> >> well and i can hit the database and do straight up AR calls in the
> >> sinatra handlers I just can't seem to get the TS setup configured
> >> appropriately so I can index the model.
>
> >> Thanks for any help
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Thinking Sphinx" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group
> > athttp://groups.google.com/group/thinking-sphinx?hl=en.
--
You received this message because you are subscribed to the Google Groups
"Thinking Sphinx" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/thinking-sphinx?hl=en.