Module: Importu

Defined in:
lib/importu.rb,
lib/importu/version.rb,
lib/importu/exceptions.rb

Overview

Importu is a Ruby gem for declarative data import.

Define importers as readable contracts with fields, converters, and rules. The gem handles parsing, converting, finding/creating records, and reporting.

## Quick Start

require "importu"

class BookImporter < Importu::Importer
  fields :title, :author, :isbn
end

source = Importu::Sources::CSV.new("books.csv")
importer = BookImporter.new(source)
importer.records.each { |record| puts record[:title] }

## Key Classes

## DSL Reference

See ConfigDSL for all importer configuration options: fields, converters, model, find_by, allow_actions, and more.

## Built-in Converters

See Converters for type conversion: boolean, date, datetime, decimal, float, integer, string, trimmed.

Defined Under Namespace

Modules: ConfigDSL, Converters, Sources Classes: BackendMatchError, BackendNotRegistered, Backends, ConverterContext, Definition, DuplicateManager, DuplicateRecord, FieldParseError, Importer, ImportuException, InvalidDefinition, InvalidInput, InvalidRecord, MissingField, Record, Summary, UnassignableFields

Constant Summary collapse

VERSION =

Current version of the Importu gem.

"0.2.0"