功能是:
- def createuser(name,pass,time)
- puts name,time
- end
我尝试:
- handle_asynchronously :createuser("a","b","c")
并得到一个错误:语法错误,意外'(‘,期待keyword_end
谢谢.
===编辑===
北京的japen和web服务器中的用户数据库.所以我用这种方式创建一个用户.
- def createuser(name,time)
- Net::HTTP.get(URI.parse("http://www.example.net/builduser.PHP?hao=#{name}&mi=#{pass}&da=#{time}"))
- end
解决方法
您不需要将参数传递给handle_asynchronously方法,只是说您的方法应该始终传递给delayed_job.
所以在你的例子中:
- def create_user(name,time)
- puts name,time
- end
- handle_asynchronously :create_user
完全符合你的需要.
你打电话的时候
- create_user('john','foo',Time.now)
与召唤是一回事
- delay.create_user('john',Time.now)
我只是设置了一个测试应用程序来完成这个以测试答案,这里是delayed_job序列化的可执行处理程序:
- --- !ruby/struct:Delayed::PerformableMethod
- object: !ruby/ActiveRecord:User
- attributes:
- name:
- pass:
- created_at:
- updated_at:
- method_name: :create_user_without_delay
- args:
- - John
- - foo
- - 2011-03-19 10:45:40.290526 -04:00