Я создал модель Post и TagObject следующим образом
class Post
include Mongoid::Document
include Mongoid::Timestamps
embeds_many :tag_objects
#embeds_many :comments
references_one :uploader, :class_name => 'User'
mount_uploader :image, ImageUploader
validates_presence_of :image
attr_accessible :tag_objects, :image
end
class TagObject
include Mongoid::Document
field :name
field :tags, :type => Array
embedded_in :post, :inverse_of => :tag_objects
attr_accessible :name, :tags
end
и в настоящее время у меня есть страница, отправляющая PUT в метод обновления контроллера Post.Обновление не удается, и я получаю следующее в консоли WEBrick:
Started POST "/posts/4d4a174fa729cf71c70000a8" for 127.0.0.1 at Wed Feb 02 21:52:09 -0500 2011
Processing by PostsController#update as HTML
Parameters: {"post"=>{"tag_objects"=>{"1"=>{"tags"=>{"1"=>"testingfds"}}}}, "authenticity_token"=>"OZ+eXzD5NyqUI4CzPadlFUMDwRrg4LsaQBs5i+J65tU=", "id"=>"4d4a174fa729cf71c70000a8"}
honeycomb_development['posts'].find({:_id=>BSON::ObjectId('4d4a174fa729cf71c70000a8')}, {}).limit(-1)
Completed in 2ms
Mongoid::Errors::InvalidType (Field was defined as a(n) Array, but received a ActiveSupport::HashWithIndifferentAccess with the value {"1"=>"testingfds"}.):
app/controllers/posts_controller.rb:39:in `update'
Я абсолютно не знаю, как это исправить, и любая помощь будет принята с благодарностью.