我有一个关联用户属于_to 角色,并希望使用 rails3_jquery_autocomplete按名称搜索用户。我想在选择用户后显示一些角色的值。
这是我的控制器
class UserController < ApplicationController
autocomplete :user, :name, scopes: [:join_role],
extra_data: [:address, :email]
这是我的模型
class User < ActiveRecord::Base
belongs_to :role
attr_accessible :name, :address, :email
scope :join_role, joins(:role)
class Role < ActiveRecord::Base
attr_accessible :name, :level
如何在用户自动完成搜索中获取名称和级别值?
我不能在extra_data选项上添加:name,:level , :role因为它会返回一个 sql 错误。
这里rails3-jquery-autocomplete-search-by-several-fields说我可以覆盖get_autocomplete_items方法,但不知道如何。
类似的东西?
def get_autocomplete_items(parameters)
super(parameters)
result = []
User.join_role.where('....').each do |user|
result << {id: user.id, label: user.name, role: user.role.name,
address: user.address, email: user.email, level: user.role.level }
end
result
end
但它导致“哈希的未定义方法‘id’......”