class Student < CouchRest::Model::Base
collection_of :phones
def add_phone(new_phone)
#this does not work
#new_phone_ids_list = phone_ids << new_phone.id
#this works
new_phone_ids_list = phone_ids + [new_phone.id]
self.update_attributes(:phone_id => new_phone_ids_list)
end
end
違いは、phone_ids << new_phone.id を使用して新しいリストを作成し、couchdb を更新すると機能しないことです。しかし、 phone_ids + [new_phone.id] を使用すると、更新が機能します。phone_ids + [new_phone.id]
新しいインスタンスが返されることは理解していますが、なぜphone_ids << new_phone.id
機能しないのかわかりません