J'essaie ma première application avec mongodb sur Rails en utilisant mongo_mapper et je pèse mes options sur un modèle STI comme ci-dessous.mongodb data design question
Cela fonctionne bien, et je vais bien sûr ajouter à cela de plusieurs façons que je peux actuellement compter, je me demandais juste si je ne serais pas mieux avec des documents incorporés ou quelque chose comme ça. Je souhaite que mes modèles partagent le plus possible, IE car ils héritent tous de certains attributs, un formulaire partiel partagé sur la propriété/_form.html.erb ... en plus de leurs propres éléments de formulaire, etc. Je sais que les vues diffèrent mais je ne suis pas encore sûr sur les contrôleurs, car je pourrais utiliser le contrôleur de propriété que je suppose pour la plupart des choses? Et je suis sûr que ça va devenir plus complexe au fur et à mesure.
Toutes les ressources pointeurs et/ou la sagesse (conseils pour économiser de la douleur) serait grandement appréciée
property.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
Restaurant
class Restaurant < Property
key :cuisine_types, Array, :required => true
end
bar
class Bar < Property
key :beers_on_tap, Array
end
je vais aussi besoin de toutes sortes de liste des choses ... sans modèles spécifiques, à savoir cuisine_types, beers_on_taps ... similaire à l'étiquetage je suppose, mais sans avoir un million de modèles en cours d'exécution autour, collection polymorphes? – holden
Cela a également été utile: http://code.alexreisner.com/articles/single-table-inheritance-in-rails.html – holden