Ruby on rails NoMethodError(对于[]:数组,未定义方法`gsub';):
我有下一个带有数组字段的模型:Ruby on rails NoMethodError(对于[]:数组,未定义方法`gsub';):,ruby-on-rails,ruby,solr,mongoid,sunspot,Ruby On Rails,Ruby,Solr,Mongoid,Sunspot,我有下一个带有数组字段的模型: 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
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):
NoMethodError(用于[“#”]:数组的未定义方法“gsub”):
如何解决此问题
谢谢你你能完整地回溯一下吗?@shingara我用ajax加载了我在控制台日志中看不到完整回溯的内容。如何在控制台日志中获取完整跟踪?我已编辑了以下问题:关系是
有多个:收件人,:class\u name=>“邀请”,:foreign\u key=>:收件人id
。您说错误在@search=Pin.search do |
,但该行不存在。我认为错误的行是@search=Invitation.search do | s |
对不起@t假设错误在@search=Invitation.search do | s |