def define_group_reader(group_name)
      class_eval <<-EOT, __FILE__, __LINE__ + 1
      def #{group_name}_group_messages          # def base_group_messages
        @error_messages[:#{group_name}]         #   @error_messages[:base]
      end                                       # end

      def #{group_name}_group_name              # def base_group_name
        @group_names[:#{group_name}]            #   @group_names[:base]
      end                                       # end
      EOT
    end
def define_group_reader(group_name)
      class_eval <<-EOT, __FILE__, __LINE__ + 1
      def #{group_name}_group_messages          # def base_group_messages
        @error_messages[:#{group_name}]         #   @error_messages[:base]
      end                                       # end

      def #{group_name}_group_name              # def base_group_name
        @group_names[:#{group_name}]            #   @group_names[:base]
      end                                       # end
      EOT
    end
дефайн методов для удобного получения ошибок в группе и названия группы
 define methods for comfortable access to error group and group name