У меня есть следующая модель с полем массива:
Class Invitation
include Mongoid::Document
include Mongoid::Timestamps::Created
include Sunspot::Mongo
field :recipients, :type => Array
attr_accessible :recipients
searchable do
text :recipients do
recipients.map { |recipient| recipient }
end
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
Это, когда я переиндексирую, не показывает ошибку, но:
Это не работает для меня нормально, Я получаю следующую ошибку в журнале:
Sunspot::UnrecognizedFieldError (поле не настроено для Invit с именем «получатели»):
Я тоже пробовал:
string :recipients do
recipients.map { |recipient| recipient }
end
Но при переиндексации получаю следующую ошибку:
recipients is not a multiple-value field, so it cannot index values []
Могу ли я решить эту проблему?