我是铁杆新手。我正在尝试在我的示例应用上实现act-as-taggable-on。我可以使用tag_list输入多个标签,但面临搜索问题。
这就是我得到的。
我使用scaffold User生成控制器&模型。
class CreateUsers < ActiveRecord::Migration
def change
create_table :users do |t|
t.string :name
t.text :tags
t.timestamps
end
end
end
我的用户模型是
class User < ActiveRecord::Base
serialize :tags
acts_as_taggable_on :tags
scope :by_join_date, order("created_at DESC")
end
我的用户控制器
Class UsersController < ApplicationController
def index
@users = User.all
@search = User.tagged_with("Tag11")
end
...
...
...
end
我也没有对ActsAsTaggableOnMigration类进行任何更改&lt; ActiveRecord ::安装gem后的迁移。
在我看来,我替换了:标签:我的_form,index&amp;中的tag_list;显示HTML文件
<div class="field">
<%= f.label :tags %><br />
<%= f.text_field :tag_list %>
</div>
这是我在浏览器中获得的
你能帮我理解我犯错的地方吗?
谢谢。
答案 0 :(得分:1)
我在猜测(因为你还没有提供其他视图中的代码)但是:
当你做@search = User.tagged_with("Tag11")
时返回的不是标签名称,而是实际的标签对象。如果您在视图中有:<%= @search %>
,则无效。你需要这样的东西:
<%= @search.map(&:name).join(', ') %>
或类似。