'dan nasıl bir komisyon görevi yürütebilirim Bir komisyon görevini çalıştırmak istiyorum (apn: bildirimler: apn_on_rails geminden teslim etmek) bir delayed_job'den. Diğer bir deyişle, apn: bildirimlerini çağırabilecek gecikmeli bir işi yapmak istiyorum: komisyon görevini teslim et.Bir delaye_job
http://geminstallthat.wordpress.com/2008/02/25/run-rake-tasks-with-delayedjob-dj/ numaralı telefondan bu kodu http://pastie.org/157390 buldum. delayed_job koşular kadar
require 'rake'
require 'fileutils'
class DelayedRake
def initialize(task, options = {})
@task = task
@options = options
end
##
# Called by Delayed::Job.
def perform
FileUtils.cd RAILS_ROOT
@rake = Rake::Application.new
Rake.application = @rake
### Load all the Rake Tasks.
Dir[ "./lib/tasks/**/*.rake" ].each { |ext| load ext }
@options.stringify_keys!.each do |key, value|
ENV[key] = value
end
begin
@rake[@task].invoke
rescue => e
RAILS_DEFAULT_LOGGER.error "[ERROR]: task \"#{@task}\" failed. #{e}"
end
end
end
Her şey iyi çalışır ve onu şikayet:
benim lib dizinine DelayedRake.rb olarak bu kodu eklenmiş[HATA]: Görev "apn: bildirimleri: teslim " başarısız oldu. Nasıl yapılacağını bilmiyorum görev 'apn: bildirimler: teslim et'
Apn_on_rails hakkında nasıl bilgilendiririm? Bir şey yapmayan DelayedRake'in tepesinde 'apn_on_rails_tasks' gerektirmeyi denedim. Ayrıca tırmık görevlerin dizin
Ben Ruby/Rails biraz yeniyim ./lib/tasks/*.rake değiştirmeyi denedi. Bu heroku üzerinde 2.3.5 üzerinde çalışıyor.
Bu harika çalıştı! Görevlere @options nasıl gönderirim? Şu anda arıyorum: – rmw
sistemi "tırmık # {@ görev}" Ben "tırmık # {@ görev} # {@ seçenekleri}" sistemini yapabilirdi? – rmw