2015-02-08 46 views
0

我有一個簡單的Sinatra應用程序,並且正在嘗試使用mysql適配器連接DataMapper。代碼的相關部分看起來像這樣`quote_string:沒有從nil到integer的隱式轉換`用sinatra上的數據映射程序

DataMapper.setup(:default, ENV['DATABASE_URL']) 

class Category 
    include DataMapper::Resource 
    property :id,   Serial 
    property :name,  String 
end 

DataMapper.finalize.auto_upgrade! 

我已經加倍檢查了一切。我正在使用Sinatra的模塊化模式。我在模塊的頂部有require 'data_mapper'。 Mysql服務器已啓動並正在運行。但每當我rackup,我得到以下錯誤:

Warning: Command failed: /dev/app/.bundle/gems/data_objects-0.10.14/lib/data_objects/quoting.rb:12:in `quote_string': no implicit conversion from nil to integer (TypeError)

我搜索了一高一低的答案,但我能找到的唯一的事情就是一個人暗示紅寶石升級從2.0到2.1。我不能這樣做,因爲這是部署到Openshift,其中最高的紅寶石是2.0。任何其他建議,爲什麼這可能會發生?

編輯:忘了補充一點,DATABASE_URL被填充罰款,我也通過openshift和升級安裝rbenv到2.1+紅寶石安裝dm-mysql-adapter

回答

相關問題