lib/railroady/models_diagram.rb in railroady-1.0.2 vs lib/railroady/models_diagram.rb in railroady-1.0.3

- old
+ new

@@ -52,34 +52,36 @@ if @options.brief || current_class.abstract_class? node_type = 'model-brief' else node_type = 'model' - # Collect model's content columns - - content_columns = current_class.content_columns + # Collect model's content columns or all columns if all_columns flag is passed + if @options.all_columns + columns = current_class.columns + else + columns = current_class.content_columns + end if @options.hide_magic # From patch #13351 # http://wiki.rubyonrails.org/rails/pages/MagicFieldNames magic_fields = [ "created_at", "created_on", "updated_at", "updated_on", "lock_version", "type", "id", "position", "parent_id", "lft", "rgt", "quote", "template" ] magic_fields << current_class.table_name + "_count" if current_class.respond_to? 'table_name' - content_columns = current_class.content_columns.select {|c| ! magic_fields.include? c.name} - else - content_columns = current_class.content_columns + columns = current_class.content_columns.select {|c| ! magic_fields.include? c.name} end - - content_columns.each do |a| - content_column = a.name - content_column += ' :' + a.type.to_s unless @options.hide_types - node_attribs << content_column + + columns.each do |a| + column = a.name + column += ' :' + a.type.to_s unless @options.hide_types + node_attribs << column end end + @graph.add_node [node_type, current_class.name, node_attribs] generated = true # Process class associations associations = current_class.reflect_on_all_associations if @options.inheritance && ! @options.transitive @@ -120,10 +122,10 @@ # Only non standard association names needs a label # from patch #12384 # if assoc.class_name == assoc.name.to_s.singularize.camelize - assoc_class_name = (assoc.class_name.respond_to? 'underscore') ? assoc.class_name.underscore.singularize.camelize : assoc.class_name + assoc_class_name = (assoc.class_name.respond_to? 'underscore') ? assoc.class_name.underscore.camelize : assoc.class_name if assoc_class_name == assoc.name.to_s.singularize.camelize assoc_name = '' else assoc_name = assoc.name.to_s end