Je viens de commencer avec Rails et je viens d'un arrière-plan .net Je trouve que le modèle hérité d'ActiveRecord est difficile à comprendre, car il ne contient pas les attributs correspondants pour le modèle. Je ne peux pas imaginer un nouveau développeur exposé à un grand code où les modèles ne contiennent que des références à d'autres modèles et à la logique métier. De mon point de vue, le modèle DataMapper est beaucoup plus facile à saisir, mais comme ActiveRecord est le standard de facto, il est bizarre de changer l'ORM juste pour ce petit problème.Création de modèles lisibles dans les rails
DataMapper
class Post
include DataMapper::Resource
property :id, Serial # An auto-increment integer key
property :title, String # A varchar type string, for short strings
property :body, Text # A text block, for longer string data.
property :created_at, DateTime # A DateTime, for any date you might like.
end
ActiveRecord
class Post < ActiveRecord::Base
end
Je ne sais pas si cela est un problème et que les gens se habituer aux modèles sans attributs, ou comment ne rails expérimentés utilisateur gérer cela?
Je ne pense pas que l'utilisation du gestionnaire de base de données ou la recherche de nombreux scripts de migration pour trouver les attributs est une option?
Spécifier attr_accessible rendra le modèle plus lisible mais je ne suis pas sûr que ce soit une bonne solution à mon problème?
annotate_models est agréable et je vais l'utiliser pour mes modèles. Même si j'aime mieux DataMapper, je m'en tiendrai à ActiveRecord car c'est la valeur par défaut. – orjan
Je suis d'accord avec grifaton dans la réponse ci-dessous. Votre fichier db/schema.rb est un endroit de facto pour rechercher cette information. Chaque projet que j'ai vu en utilisant annotate_models contient des commentaires obsolètes. Les gens oublient d'exécuter la tâche et/ou tombent malades du bruit au sommet des fichiers modèles. –