I’m trying to run a rails app developed by my firm on my Ubuntu machine.
I’m using RVM with what I think are all the appropriate gems installed.
The application works fine on co-workers OSX machines.
When running db:migrate I get the following error:
$ rake db:migrate --trace
…
rake aborted!
An error has occurred, all later migrations canceled:
undefined method xss_terminate' for #<Class:0x7f333e5759e0> /home/martron/.rvm/gems/ruby-1.8.7-p330@orba/gems/activerecord-2.3.5/lib/active_record/base.rb:1959:in
method_missing_without_paginate’
/home/martron/.rvm/gems/ruby-1.8.7-p330@orba/gems/mislav-will_paginate-2.3.11/lib/will_paginate/finder.rb:170:in
`method_missing’
…
xss_template is installed in the vendors/plugins folder (I even tried
reinstalling). I get the feeling that the problem isn’t actually with
xss_terminate but rather something in my ubuntu rails environment.
Maybe a path to plugins is misconfigured or there’s a dependency for
xss_terminate that’s missing? I’m new to ruby/rails development. Any
help/thoughts is appreciated.
I should also mention that other rails applications that don’t include
xss_terminate do work on my machine.
Update:
I removed xss_template and all references to it from the project and now
I’m getting the same error, but with another plugin ‘stampable’:
undefined local variable or method `stampable’ for
#Class:0x7f96cb59c978
So, this seems to be a problem with plugin initialization. How should I
go about getting to the root of it?
So it turns out that I can’t create rails applications just anywhere on
my machine. They need to be in my www directory as I had set it up for
apache. Thing is, I’m using webrick to run rails so apache isn’t really
in the picture. Is there an environment variable or something that sets
the rails base to a certain dir?
It’s reasonably clear:
-If I import a project from github in my www dir, then rake
db:create/migrate work as expected and the site runs fine.
-If I import a project from github to any other directory (including
subdirectories of www) I get errors when running rake db:migrate
(usually to do with plugin initialization).
Now, I’ve tried checking environment variables and .rvm’s configuration
files looking for a path to my www directory but I haven’t come across
any explicit mentions of it. I’m on Ubuntu and do have apache installed
but I’m not trying to run rails with apache. Now the www dir I’m
talking about isn’t /var/www because I setup a different virtualhost on
my machine to ~/www so it’s odd that rails would focus on it by default.
I don’t exactly know what’s going on but for now at least I know how to
get sites going.
On Thu, Jan 13, 2011 at 1:46 PM, Martin E. [email protected]
wrote:
So it turns out that I can’t create rails applications just anywhere on
my machine.
What makes you think that?
Or to put it another way: you haven’t even begun to provide enough
information to define a problem, much less help solve it.
–
Hassan S. ------------------------ [email protected]
twitter: @hassan