2014-02-19 29 views
2

即時通訊使用行爲-AS-加標籤上(3.0.1),我試圖在控制檯上的一些代碼:tagged_with總是告訴我一個空數組(行爲-AS-加標籤上)

irb(main):005:0* Noticia.last.tags 
=> [#<ActsAsTaggableOn::Tag id: 9159, name: "oil">] 
irb(main):006:0> Noticia.tagged_with("oil") 
=> [] 

我注意到我的第二個查詢不添加JOIN在SQL:

Noticia Load (0.5ms) SELECT "noticia".* FROM "noticia" WHERE (deleted_at IS NULL) ORDER BY noticia.id_noticia DESC LIMIT 1 
ActsAsTaggableOn::Tag Load (0.5ms) SELECT "tags".* FROM "tags" INNER JOIN "taggings" ON "tags".id = "taggings".tag_id WHERE (("taggings".taggable_id = 10630) AND ("taggings".taggable_type = 'Noticia') AND ((taggings.context = ('tags')))) 

ActsAsTaggableOn::Tag Load (3.9ms) SELECT "tags".* FROM "tags" WHERE (lower(name) = 'oil') 
Noticia Load (0.3ms) SELECT "noticia".* FROM "noticia" WHERE (deleted_at IS NULL) AND (1 = 0) 

我不知道有什麼問題,在行爲-AS-加標籤上的文檔說,我只是運行「Model.tagged_with(‘my_tag’)」 。我按照這些步驟上的行爲,爲-加標籤,

回答

0

配置我有類似的問題:

> post = Post.create(body: "Hello world") 
=> <Post id: 9, title: nil, body: "Hello world", author_id: nil, author_type: nil, created_at: "2015-10-07 08:53:32", updated_at: "2015-10-07 08:53:32"> 
> post.tag_list.add('hello', 'world') 
=> ["hello", "world"] 
> Post.tagged_with('hello') 
=> <ActiveRecord::Relation []> 
> Post.tagged_with('world') 
=> <ActiveRecord::Relation []> 

我的錯誤是,我只是忘了保存我的帖子添加標籤後發佈的tag_list :)

> post.save 
=> true 
> Post.tagged_with('hello') 
=> <ActiveRecord::Relation [#<Post id: 9, title: nil, body: "Hello world", author_id: nil, author_type: nil, created_at: "2015-10-07 08:53:32", updated_at: "2015-10-07 08:53:32">]> 
相關問題