【发布时间】:2011-09-30 10:32:36
【问题描述】:
我已经下载并安装了模板 Rails 3 + Mongoid + Devise。
我已经创建了一个脚手架 Car 用于与 Devise 的 User 模型的关系。我的用户模型中有这段代码:
class User
include Mongoid::Document
# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
field :name
validates_presence_of :name
validates_uniqueness_of :name, :email, :case_sensitive => false
attr_accessible :name, :email, :password, :password_confirmation, :remember_me
embeds_many :cars
end
我的汽车模型我有下一个代码:
class Car
include Mongoid::Document
field :title
field :description
field :image_url
field :price
field :published_on, :type => Date
validates_presence_of :title, :description, :image_url, :price
validates :title, :length => { :maximum => 70 }
validates :description, :length => { :maximum => 2000 }
validates :price, numericality: {greater_than_or_equal_to: 0.01}
validates :image_url, allow_blank: true, format: {
with:
%r{\.(gif|jpg|png)$}i,
message: 'must be a URL for GIF, JPG or PNG image.'
}
embedded_in :user, inverse_of: :cars
end
当我刷新页面时,出现下一个错误:
Mongoid::Errors::InvalidCollection in Cars#index
不允许访问 Car 的集合,因为它是嵌入式文档,请从根文档访问集合。
这段代码有什么问题?谢谢你
【问题讨论】:
标签: ruby-on-rails devise mongoid