【发布时间】:2011-04-26 22:15:44
【问题描述】:
我有这个要执行的响应由“Resque”运行的类,我在recipient.response = response.body 这一行有一个错误,即:
#Hash:0x00000003969da0 的未定义方法 response='
我认为这是因为 worker 和 ActiveRecord 不能一起工作。
PS我已经加载了我的环境和这个类放在lib目录中
使用:
红宝石 1.9.2
导轨 3
Resque 1.10.0
class Msg
def self.perform(message,sender,host, path, recipient)
message_logger ||= Logger.new("#{Rails.root}/log/message.log")
response = Net::HTTP.get_response(host, path)
begin
recipient.response = response.body
recipient.sent_at = Time.zone.now
recipient.save
# Logging
log = "Message #{
message.sent_at}\n\tRespone:\n\t\tBody: #{response.body}\n\t\tCode: #{response.code}\n"
message_logger.info(log)
rescue Exception => e
message_logger.error(e.message + '/n' + e.backtrace.inspect)
end
end
end
【问题讨论】:
标签: ruby-on-rails activerecord ruby-on-rails-3 ruby-1.9 resque