2017-02-21 25 views
0

Я создаю скрипт Ruby, который считывает данные с листа Excel и помещает их данные в базу данных MySQL. Я написал это и установил необходимые драгоценные камни. Однако, когда я пытаюсь запустить его через мой CPanel хозяин, и я получаю следующее сообщение об ошибке:Gem не найден, когда я только что установил его

Array ([0] => /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- ruby-mysql (LoadError) [1] => from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' [2] => from ../ruby/InsertarFaltantesExcel.rb:2) 

рубина Код:

require 'rubygems' 
require 'ruby-mysql' 
require 'spreadsheet' 
#load './spreadsheet.rb' 

con = Mysql.connect('xx', 'xx', 'xx','xx') 

ARGV = "--help" if ARGV.empty? 

workbook = Spreadsheet.open(ARGV[0]) 
sheet = workbook.worksheet(0) 

sheet.each do |row| 
    @faltantes = { 
    "id_verificador" => "#{row[0]}", 
    "order_id" => "#{row[1]}", 
    "id_proveedor" => "#{row[28]}", 
    "shipping" => "#{row[10]}", 
    "ean" => "#{row[4]}", 
    "isbn" => "#{row[5]}", 
    "description" => "#{row[8]}", 
    "sku" => "#{row[9]}", 
    "cost" => "#{row[40]}", 
    "order_price" => "#{row[14]}", 
    "master" => "#{row[39]}", 
    "quantity_purchased" => "#{row[11]}", 
    "total_price" => "#{row[12]}", 
    "condition" => "#{row[33]}", 
    "tracking" => "#{row[29]}"  
    } 

    insertar_faltantes(@faltantes, con) 
end 

def insertar_faltantes(hash, con) 
    statement - con.prepare("INSERT INTO articulos(art_id_verificador, art_id_orden, art_id_proveedor, art_shipping, art_N13, art_ISBN, art_titulo, art_SKU, art_cost, art_precio, art_master, art_cantidad, art_total, art_condition, 
    art_tracking) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?);") 
    statement.execute "#{hash['id_verificador']}", "#{hash['order_id']}", "#{hash['id_proveedor']}", "#{hash['shipping']}", "#{hash['ean']}", "#{hash['isbn']}", "#{hash['sku']}", "#{hash['cost']}", "#{hash['order_price']}","#{hash['master']}", 
"#{hash['quantity_purchased']}", "#{hash['condition']}", "#{hash['tracking']}" 
end 
+0

Вы знаете, где находятся ваши драгоценные камни? Попробуйте посмотреть, будет ли он установлен. Вероятно, это где-то около '/ usr/lib/ruby ​​/ site_ruby/1.8/rubygems /' –

+0

На самом деле, это не в том конкретном месте, о котором вы говорили. Скорее он здесь: '~/ruby ​​/ gems/gems /' –

+0

Являются ли другие драгоценные камни в одном и том же месте? Я полагаю, все они работают. –

ответ

1

Камней в ~/ruby/gems/gems/ не быть распознаны рубиновым исполняемым файлом. Найдите, где хранятся все остальные драгоценные камни, и перемещайте их туда.

В качестве альтернативы попробуйте использовать другой менеджер пакетов. Если вы успешно установили драгоценные камни в прошлом, используйте менеджера, который вы использовали для этого.

+0

Здравствуйте, я использовал Ruby в прошлом, чтобы установить его драгоценные камни. Я не знаю, понимаете ли вы это. –

+0

Какую команду вы обычно используете? –

+0

'gem install ' –