第一次在这里发帖(温柔点,我做了调查!)
我是从另一种语言学来的,刚开始接触Ruby生态系统,但这让我觉得很奇怪。我已经将twilio-ruby库添加到我的Gemfile中,完成bundle install/尝试bundle update
bundle show twilio-ruby~/.rvm/宝石/ruby-2.1.2/珠宝/twilio-ruby-3.11.5
然而,当尝试任何示例时,我得到以下错误:
Undefined method 'messages' for #<Twilio::REST::Client::Account:0x00000102cea740>
代替调用,等等。没有什么工作。甚至没有@client.account.sms。消息(遗留调用)。
熟悉pry,做过@client。撬取self.account.methods.sort,这些方法/类成员根本不存在于模块中。
那么什么是有效的呢?ruby测试。rb包含:
@client = Twilio::REST::Client.new '{{removed}}', '{{removed}}'
#@client.pry
p @client.account.messages.create(
:from => '+1XXX',
:to => '+1XXX',
:body => 'Hey there!'
)
如果我把相同的代码放在我的应用程序的顶部。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。
在调用bundle后调用twilio-ruby不起作用
6年后,我分享了这个问题的罪魁祸首:春天
我运行spring stop
,突然一切都像预期的那样加载。