J'essaie d'utiliser la gemme acts_as_taggable dans mon projet Rails, et je ne sais pas si quelqu'un peut signaler ce que je fais de mal ou s'il y a un bogue dans le projet.acts_as_taggable_on: NoMethodError: méthode non définie `add '
J'ai signalé un problème au projet: https://github.com/mbleigh/acts-as-taggable-on/issues/688, mais personne n'a encore répondu.
Je ne peux pas utiliser les fonctionnalités de base de l'ajout de balises en utilisant par exemple: taglist.add("a")
ou taglist.remove("a)
ou balises définies à l'aide taglist = 'a'
, etc. Les méthodes ne semblent pas exister. J'utilise Ruby 2.2.3 et Rails 4.2.3. Mon Gemfile a:
gem 'acts-as-taggable-on', '~> 3.4'
J'ai aussi essayé
gem 'acts-as-taggable-on', '~> 3.5'
Dans mon modèle, j'ai:
class Space < ActiveRecord::Base
acts_as_taggable_on :skills
de la console rails je peux faire ce qui suit:
> s = Space.first
=> #<Space id: 1172, created_at: "2015-09-24 08:13:09", ...<many fields>... updated_at: "2015-09-24 08:13:09">
> s.skills
ActsAsTaggableOn::Tag Load (2.0ms) SELECT "tags".* FROM "tags" INNER JOIN "taggings" ON "tags"."id" = "taggings"."tag_id" WHERE "taggings"."taggable_id" = $1 AND "taggings"."taggable_type" = $2 AND "taggings"."context" = $3 [["taggable_id", 1172], ["taggable_type", "Space"], ["context", "skills"]]
=> #
> s.skills.add("a")
NoMethodError: undefined method `add' for # <ActiveRecord::Associations::CollectionProxy []>
from /Users/n/.rvm/gems/[email protected]/gems/activerecord-4.2.3/lib/active_record/relation/delegation.rb:136:in `method_missing'
from /Users/n/.rvm/gems/[email protected]/gems/activerecord-4.2.3/lib/active_record/relation/delegation.rb:99:in `method_missing'
from (irb):3
from /Users/n/.rvm/gems/[email protected]/gems/railties-4.2.3/lib/rails/commands/console.rb:110:in `start'
from /Users/n/.rvm/gems/[email protected]/gems/railties-4.2.3/lib/rails/commands/console.rb:9:in `start'
from /Users/n/.rvm/gems/[email protected]/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:68:in `console'
from /Users/n/.rvm/gems/[email protected]/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
from /Users/n/.rvm/gems/[email protected]/gems/railties-4.2.3/lib/rails/commands.rb:17:in `<top (required)>'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `block in require'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:in `load_dependency'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:274:in `require'
from /Users/n/code/pop/poprails/bin/rails:8:in `<top (required)>'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:268:in `load'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:268:in `block in load'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:240:in `load_dependency'
from /Users/n/.rvm/gems/[email protected]/gems/activesupport-4.2.3/lib/active_support/dependencies.rb:268:in `load'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/commands/rails.rb:6:in `call'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/command_wrapper.rb:38:in `call'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application.rb:183:in `block in serve'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application.rb:156:in `fork'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application.rb:156:in `serve'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application.rb:131:in `block in run'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application.rb:125:in `loop'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application.rb:125:in `run'
from /Users/n/.rvm/gems/[email protected]/gems/spring-1.3.6/lib/spring/application/boot.rb:18:in `<top (required)>'
from /Users/n/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /Users/n/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from -e:1:in `<main>'2.2.3 :004