나는 add_latest_apps
라는 작업이있는 rakefile.rb 있습니다. 이 작업은 datamapper를 사용하여 생성되지 않은 일부 테이블을 데이터베이스에 작성하고 XML 피드에서 일부 정보를 스크랩 한 다음 테이블에 데이터를 넣습니다. 문제는 내 레이크 작업을 실행할 수없는 것입니다.나는 스케쥴러를 사용하여 heroku에서 datamapper와 관련된 레이크 작업을 실행하려고 시도하고 있지만 heroku가 sqlite를 사용하려고 시도하는 것 같습니다.
heroku run rake add_latest_apps
다음 명령을 사용하는 경우 : rake aborted! no such file to load -- dm-sqlite-adapter
이것은 postgres 어댑터를 사용해야하는 경우에도 sqlite 어댑터를 사용하려고합니다. 내가 도대체 뭘 잘못하고있는 겁니까?
rakefile.rb :
require 'open-uri'
require 'nokogiri'
require 'awesome_print'
require 'data_mapper'
require 'dm-postgres-adapter'
require 'pg'
task :add_latest_apps do
DataMapper.setup(:default, ENV['DATABASE_URL'] || "sqlite3://#{Dir.pwd}/app.db")
class Company
include DataMapper::Resource
property :id, Serial
property :company_name, String
property :company_id, Text, :unique => true
has n, :apps
end
class App
include DataMapper::Resource
property :id, Serial
property :app_id, Integer
property :bundle_id, Text
property :app_name, Text
property :company_name, Text
property :created_at, DateTime
property :rank, Integer
belongs_to :company
end
DataMapper.finalize.auto_upgrade!
puts 'Database and tables created'
#Get App data from Apple
#Insert apps and companies into database
end
Gemfile :
source :rubygems
gem 'sinatra', '1.1.0'
gem 'thin'
gem 'nokogiri'
gem 'awesome_print'
gem 'data_mapper'
gem 'dm-postgres-adapter'
gem 'pg'
이 도와주세요!
응용 프로그램은 실제로 순간에 설정 데이터베이스가없는 것 같다. 나는 그것을 설정하는'DataMapper.setup' 사용자에게 노력하고 있습니다. (?!하지만 물론 아직 존재 나던) 내가 Heroku가 함께'ENV [ 'DATABASE_URL를'] 작업을 DataMapper을 얻기에 관하여 읽은 내용에서'내 DB의 주소를 포함 실제로해야 –