我正在使用 mongo_mapper 在 Rails 上使用 mongodb 尝试我的第一个应用程序,我正在权衡我在如下 STI 模型上的选项。
它工作得很好,我当然会以比我目前无法计算的更多方式添加它,我只是好奇我是否不会更好地使用嵌入式文档或类似的东西。
我希望我的模型尽可能多地共享,IE 因为它们都继承了某些属性,共享表单部分在 property/_form.html.erb 上......除了它们自己独特的表单元素等。我知道这些观点会有所不同,但我还不确定控制器,因为我可以使用我假设的大多数事情的属性控制器?我敢肯定,随着我的进展,它会变得更加复杂。
任何指针资源和/或智慧(止痛技巧)将不胜感激
属性.rb
class Property
include MongoMapper::Document
key :name, String, :required => true
key :_type, String, :required => true
key :location_id, Integer, :required => true
key :description, String
key :phone, String
key :address, String
key :url, String
key :lat, Numeric
key :lng, Numeric
key :user_id, Integer, :required => true
timestamps!
end
餐厅
class Restaurant < Property
key :cuisine_types, Array, :required => true
end
酒吧
class Bar < Property
key :beers_on_tap, Array
end