[英]unexpected end syntax error
如下代码:
require 'csv'
desc "Import Voters from CSV File"
task :import => [:environment] do
file ="db/GOTV.csv"
CSV.foreach(file, :headers => true) do |row|
Voter.create({
:last_name => row[0],
:first_name => row[1],
:middle_name => row[2],
:name_suffix => row[3],
:primary_address => row[4],
:primary_city => row[5],
:primary_state => row[6],
:primary_zip => row[7],
:primary_zip4 => row[8],
:primary_unit => row[9],
:primary_unit_number => row[10],
:phone_number => row[11],
:phone_code => row[12],
:gender => row[13],
:party_code => row[14],
:voter_score => row[15],
:congressional_district => row[16],
:house_district => row[17],
:senate_district => row[18],
:county_name => row[19],
:voter_key => row[20],
:household_id => row[21],
:client_id => row[22],
:state_voter_id => row[23]
})
end
...引发以下错误:
/Users/ecumbee/Desktop/cloudvoters/lib/tasks/import.rake:35: syntax error, unexpected $end, expecting kEND
end
^
我试过删除结尾,它会引发与尝试添加另一结尾相同的错误,但是会导致无法编译错误。
编辑:添加第二个结束语句时出错
Don't know how to build task 'db:import'
代码的end
是CSV.foreach ... do
块。 您错过了task ... to
另一end
task ... to
阻止。
如果那仍然给您带来语法错误,请编辑您的问题,然后发布该错误。
在错误消息中, $end
指向输入文件的末尾,而kEND
指向end
关键字,因此它抱怨缺少end
,而不是多余的end
。
如果在添加另一end
后仍然出现语法错误,则与该错误无关。
我知道您说过您尝试添加另一端,但没有帮助,但是文件的问题是它缺少将结束任务的end
关键字
task :import => [:environment] do
然后,当您添加缺少的end
您能否提供有关所得到的错误的更多信息?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.