diff --git a/lib/model_probe/templates/model.rb.erb b/lib/model_probe/templates/model.rb.erb index 44827d3..9dfee52 100644 --- a/lib/model_probe/templates/model.rb.erb +++ b/lib/model_probe/templates/model.rb.erb @@ -1,36 +1,102 @@ # frozen_string_literal: true class <%= name -%> < <%= superclass_name %> - # extends .................................................................................................. + # @!endgroup + ############################################################################################################ + # !@group extends + ############################################################################################################ - # includes ................................................................................................. - # constants ................................................................................................ - # class methods ............................................................................................ + # @!endgroup + ############################################################################################################ + # !@group includes + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # @!group scopes (composable queries) + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # !@group constants + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # @!group additional config (accepts_nested_attribute_for, etc.) + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # @!group class methods + ############################################################################################################ + class << self end - # relationships ............................................................................................ + # @!endgroup + ############################################################################################################ + # @!group relationships + ############################################################################################################ + <% foreign_key_columns.each do |column| -%> <%= "belongs_to :#{column.name.sub(/_id\z/, "")}" %> <% end -%> - # validations .............................................................................................. + # @!endgroup + ############################################################################################################ + # @!group validations + ############################################################################################################ + <% validation_columns.each do |column| -%> <%= "validates :#{column.name}, presence: true" unless column.null if required_columns.include?(column) %> <%= "validates :#{column.name}, length: {maximum: #{column.limit}}" if limit_columns.include?(column) %> <% end -%> - # callbacks (caution: side effects) ........................................................................ + # @!endgroup + ############################################################################################################ + # @!group callbacks (caution: side effects) + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # @!group additional config (accepts_nested_attribute_for, etc.) + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # @!group public instance methods + ############################################################################################################ + + + + # @!endgroup + ############################################################################################################ + # @!group protected instance methods + ############################################################################################################ + - # scopes (composable queries) .............................................................................. - # additional config (accepts_nested_attribute_for, etc.) ................................................... + # @!endgroup + ############################################################################################################ + # @!group private instance methods + ############################################################################################################ - # public instance methods .................................................................................. - # protected instance methods ............................................................................... - # private instance methods ................................................................................. + # @!endgroup end