Sha256: d0d2151185b0f25e72492ce73bfdd58c8f8bf8833d44e01c01a5bbdb8cb5decf
Contents?: true
Size: 1.3 KB
Versions: 1
Compression:
Stored size: 1.3 KB
Contents
class UserImporter < NtqExcelsior::Importer model_klass "User" primary_key :email ## if set to save, the record will not be save automatically after import_line ## Errors have to be added to the @errors hash manually # autosave false structure [{ header: "Email", description: "Email de l'utilisateur a créer ou modifier", required: true, }, { header: "Actif", description: "Utilisateur activé", required: true, values: [ { header: "True", description: "Activé", }, { header: "False", description: "Inactivé", } ] }, { header: "Prénom", required: true, }, { header: "Nom", required: true, }] sample_file "/import_samples/users.xlsx" schema({ email: 'Email', first_name: /Prénom/i, active: { header: /^Actif.*/i, humanized_header: 'Actif', # (Optional) if provided, will be displayed instead regex in missing headers required: false }, last_name: { header: /^Nom$/i, required: true, parser: ->(value) { value&.upcase } }, }) def import_line(line, save: true) super do |record, line| record.email = line[:email] record.first_name = line[:first_name] record.last_name = line[:last_name] end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ntq_excelsior-1.5.1 | samples/user_importer.rb |