Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

undefined local variable or method `acts_as_taggable' in gem

I'm working on converting a plugin to a gem. In one of the models I'm using acts_as_taggable_on, and it looks like this

class BlogPost < ActiveRecord::Base
  acts_as_taggable
  ....
end

However, I get this error when I run it:

 undefined local variable or method `acts_as_taggable' for #<Class:0x000000060799b8>

and the stack trace looks like this:

activerecord (3.1.0) lib/active_record/base.rb:1082:in `method_missing'
test_gem (0.1.0) app/models/blog_post.rb:28:in `<class:BlogPost>'
test_gem (0.1.0) app/models/blog_post.rb:2:in `<top (required)>'

The acts_as_taggable gem is included in my gemspec file and is installed on the system.

gem install acts-as-taggable-on
Successfully installed acts-as-taggable-on-2.1.1
1 gem installed
Installing ri documentation for acts-as-taggable-on-2.1.1...
Installing RDoc documentation for acts-as-taggable-on-2.1.1...

I have no idea what could be wrong - please help me out

like image 678
Markus Avatar asked Sep 26 '11 16:09

Markus


3 Answers

I had the same issue. I restarted my server and it worked fine after

like image 192
lgx Avatar answered Nov 02 '22 10:11

lgx


none of above answers works for me, what I did was put :

 require 'acts-as-taggable-on'

in the beginning the model where I'm using the gem :)

like image 25
edymerchk Avatar answered Nov 02 '22 09:11

edymerchk


Have you put the following in you Gemfile:

gem 'acts-as-taggable-on', '~>2.1.0'

then

bundle install
like image 38
Tache Avatar answered Nov 02 '22 11:11

Tache