我有下一个带有数组字段的模型:
Class Invitation
include Mongoid::Document
include Mongoid::Timestamps::Created
include Sunspot::Mongo
# this is the relation. Is not a field
has_many :recipients, :class_name => 'Invitation', :foreign_key => :recipient_id
attr_accessible :recipients
searchable do
string :recipients, :multiple => true do
recipients.map { |r| r.recipients.to_s }
end
end
我在我的控制器中:
def recipients
@invitation = Invitation.find(params[:id])
@search = Invitation.search do |s|
s.fulltext params[:search]
s.with(:recipients, @invitation.recipients)
end
@recipients = @search.results
respond_to do |format|
format.html
end
end
错误的行是@search = Invitation.search do |s|
我收到了下一个错误:
NoMethodError (undefined method `gsub' for ["#<Invitation:0x9a1c6e8>"]:Array):
如何解决此问题?¿ 谢谢
答案 0 :(得分:-4)