SORU
10 Aralık 2010, Cuma


Ruby on Rails - CSV dosyasından Veri Alma

Varolan bir veritabanı tabloya bir CSV dosyasından veri almak istiyorum. CSV dosyası olarak kaydedin, sadece verileri alıp mevcut tabloya koymak istemiyorum. Ruby 1.9.2 ve Raylar 3 kullanıyorum.

Burası benim masam

create_table "mouldings", :force => true do |t|
  t.string   "suppliers_code"
  t.datetime "created_at"
  t.datetime "updated_at"
  t.string   "name"
  t.integer  "supplier_id"
  t.decimal  "length",         :precision => 3, :scale => 2
  t.decimal  "cost",           :precision => 4, :scale => 2
  t.integer  "width"
  t.integer  "depth"
end

Bana bunu yapmak için en iyi yolu göstermek için bazı kod, şükredin.

CEVAP
2 Mayıs 2012, ÇARŞAMBA


Eşit derecede iyi çalışıyor yfeldblum cevabı, basit sürüm:

require 'csv'    

CSV.foreach(filename, :headers => true) do |row|
  Moulding.create!(row.to_hash)
end

With_indifferent_access veya symbolize_keys, ve bir dize için dosyayı önce okumak gerek gerek yok.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dogbert files

    Dogbert file

    12 Ocak 2012
  • TeeMayneTV

    TeeMayneTV

    27 Kasım 2010
  • Turkish Airlines

    Turkish Airl

    11 AĞUSTOS 2006