Module: SwaggerDocsRails

Defined in:
lib/swagger_docs_rails/generator.rb,
lib/swagger_docs_rails.rb,
lib/swagger_docs_rails/engine.rb,
lib/swagger_docs_rails/version.rb,
lib/swagger_docs_rails/configuration.rb,
lib/swagger_docs_rails/schema_parser.rb,
lib/swagger_docs_rails/openapi_builder.rb,
lib/swagger_docs_rails/controller_parser.rb,
lib/swagger_docs_rails/security_scheme_builder.rb,
app/controllers/swagger_docs_rails/swagger_controller.rb,
lib/generators/swagger_docs_rails/install/install_generator.rb

Overview

lib/swagger_docs_rails/controller_parser.rb

Escaneia app/controllers/api/*/.rb e extrai por controller:

Ações CRUD padrão (index, show, create, update, destroy)
Ações customizadas (importar, upload_arquivo, etc.)
params.permit por ação — direto no corpo ou via método privado referenciado
Campos de arquivo (format: binary) detectados pelo nome e pelo corpo da ação
Detecção de multipart/form-data (Roo::, .original_filename, params[:arquivo], etc.)
Padrão Model.column_names.reject{}.permit(*permitted, :extra_field)
Método HTTP de ações customizadas (heurística por nome + @swagger_method_X)
Metadados de documentação via comentários @swagger_*
Estruturas aninhadas recursivas (ex: responsaveis: [ { nome:, enderecos: [] } ])

Defined Under Namespace

Modules: Generators, SecuritySchemeBuilder Classes: Configuration, ControllerParser, Engine, Generator, OpenapiBuilder, SchemaParser, SwaggerController

Constant Summary collapse

VERSION =
"0.2.0"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject



18
19
20
# File 'lib/swagger_docs_rails.rb', line 18

def configuration
  @configuration ||= Configuration.new
end

Class Method Details

.configure {|configuration| ... } ⇒ Object

Yields:



22
23
24
# File 'lib/swagger_docs_rails.rb', line 22

def configure
  yield(configuration)
end