Ruby - CSV将拆分数据导入不同的表

时间:2017-08-06 13:55:46

标签: ruby csv import rake

我尝试使用rake任务导入csv文件。 csv看起来像这样

model,brand,type,engine,price,doors
Corsa,Opel,cupe,1100,14500,2
Corsa,Opel,cupe,1100,1450,2
Impreza,Subaru,sedan,1200,25000,4

我的表格结构虽然如此

# Tables
Brands: id, brand_name
Models: id, brand_id, model_name, type_id, engine, price, doors
Types: id, car_type (cupe, sedan etc)

这是我的佣金任务

require "csv"

namespace :import do
  desc "Import cars from CSV"
  task cars: :environment do
    file = File.join(Rails.root, "cars.csv")
    CSV.foreach(file, headers: true) do |row|
      p row
    end
  end
end

如何导入数据并将其拆分为不同的表?

1 个答案:

答案 0 :(得分:1)

public class DownloadImageTask extends AsyncTask<String, Void, Bitmap> { AppCompatImageView imageView; int position; public DownloadImageTask(int position, AppCompatImageView imageView){ this.imageView = imageView; this.position = position; } @Override protected Bitmap doInBackground(String...urls) { String urlOfImage = urls[0]; Bitmap logo = null; try{ logo = BitmapFactory.decodeStream((InputStream) new URL(urlOfImage).getContent()); }catch(Exception e){ e.printStackTrace(); } return logo; } @Override protected void onPostExecute(Bitmap result){ if(result != null) { YourCustomArrayAdapter.myListViewImageViewsArray [position] = result; imageView.setImageBitmap(result); }else{ YourCustomArrayAdapter.myListViewImageViewsArray [position] = null; imageView.setImageResource(null); } } } 内部创建每个#each个实例,如下所示:

ActiveRecord