Twilio库在Rails中不起作用,但在rails之外工作?

时间:2014-06-19 01:58:58

标签: ruby-on-rails twilio

这里的第一次海报(温柔,我做了我的研究!)

我是来自另一种语言的Ruby生态系统的新手,但这让我很奇怪。我已将twilio-ruby库添加到我的Gemfile中,完成了bundle install / tries bundle update

捆绑秀twilio-ruby 〜/ .rvm /宝石/红宝石2.1.2 /宝石/ twilio-红宝石3.11.5

但是,在尝试任何示例时,我收到以下错误。

Undefined method 'messages' for #<Twilio::REST::Client::Account:0x00000102cea740>

替代电话等等。没有任何作用。甚至不是@ client.account.sms.messages(遗留调用)。

我熟悉pry并且已经完成了@ client.pry,产生了self.account.methods.sort,并且这些方法/类成员根本不在模块中。

那么有什么用呢? ruby test.rb包含:

@client = Twilio::REST::Client.new '{{removed}}', '{{removed}}'
#@client.pry


p @client.account.messages.create(
  :from => '+1XXX',
  :to => '+1XXX',
  :body => 'Hey there!'
)

如果我将相同的代码放在application.rb的顶部,那么在应用程序类之后,它就会起作用。

我还在尝试过哪里?控制器,模型,独立类在控制器/模型中导入和调用。在Rails被引导后,它似乎无法正常工作。我很困惑。

我非常擅长调试,所以在这方面的任何提示都会受到赞赏!

版本:Ruby 2.1.2,Rails 4.0.4,twilio-ruby 3.11.5

在我做出的每一次更改之后,我都会重新启动rails服务器。

更新

config/application.rb

require 'twilio-ruby'
@client = Twilio::REST::Client.new '{{removed}}', '{{removed}}'
#@client.pry


p @client.account.messages.create(
  :from => '+',
  :to => '+',
  :body => 'Hey there!'
)

Bundler.require(:default, Rails.env)

#require 'twilio-ruby'
@client = Twilio::REST::Client.new '{{removed}}', '{{removed}}'
#@client.pry


p @client.account.messages.create(
  :from => '+',
  :to => '+',
  :body => 'Hey there!'
)

在打电话给捆绑工作之前调用twilio-ruby。

调用bundler后调用twilio-ruby不起作用。

1 个答案:

答案 0 :(得分:0)

6 年后,我正在分享这个问题的罪魁祸首:spring

我运行了 spring stop,突然一切都按预期加载了。