1

我正在将一千条记录 csv 导入具有 gmap4rails 地理编码的模型。在十几条记录之后,导入一直失败,但总是在不同的记录上。数据看起来还不错,因为它在一次尝试中导入了一条记录,然后在同一条记录上又失败了。这是模型代码:

require 'csv'

  validates :name, :uniqueness  => true
  validates :address, :presence  => true
  acts_as_gmappable
  def gmaps4rails_address
    "#{self.address} New Orleans, LA #{self.zip}"
      rescue ActiveRecord::RecordInvalid  
        print "err"
        end


  def self.import_restaurants()

    CSV.foreach('lib/uploads/NOLA_Restaurants_Basic.csv', :headers => true) do |row|
        record = Restaurant.new(
            :name     => row[0], 
            :address  => row[1], 
            :zip      =>  row[2], 
        )
        if record.address.valid?
          record.save!  

        end
    end
  end

我正在从控制台运行 Restaurant.import_restaurants()。

CSV 的一些示例行

name    address zip
ORLEANS CLUB    5005  ST CHARLES AVE    70115
LOUISIANA CLUB  707  UNION ST   70130
HOTEL MONTELEONE    214  ROYAL ST   70130
N O LAWN TENNIS CLUB    5353  LAUREL ST 70115
DOMILISES BAR   5240  ANNUNCIATION ST   70115
4

0 回答 0