2010-07-06 12 views
0

J'ai l'application Ruby on Rails en utilisant DataMapper, la base de données est SQLite, l'application est hébergée sur Heroku. Je voudrais charger la base de données avec des données d'une feuille de calcul, cependant, je ne sais pas la manière la plus efficace ... aidez s'il vous plaît!Comment charger des objets DataMapper dans une base de données SQLite avec des données d'une feuille de calcul?

À titre d'exemple, nous allons dire que j'avoir un modèle de l'utilisateur avec des champs:

  • Nom
  • Âge
  • Anniversaire
  • Ville natale

Répondre

1

J'ai eu un problème similaire d'importation données externes dans le datamapper. J'ai fait un vidage CSV des données de la base de données externe, puis j'ai écrit une importation qui lisait le fichier CSV et créait un nouvel enregistrement.

class Staff 
include DataMapper::Resource 
    property :id, String, :key => true 
    property :full_name, String 
    property :email, String 
    has n, :stages 
end 

Puis:

CSV.parse(staff) do |row| 

@staff = Staff.create(
    :id => row[1], 
    :full_name => row[0], 
    :email => row[0].downcase.gsub!(' ', '.') 
); 


@staff.save 

Peut-être une approche comme celui-ci serait appropriée?

+0

Merci c'est très élégant! – hagope