Ruby:未初始化常量(NameError)
我在一个目录中有2个文件: user.rb 在sep文件bot.rb中,我有: 需要相对的“用户” User.new.get_userid 然而,这给了我: 未初始化的常量松弛::客户端名称错误 我试过使用require user,它给了我-require':无法加载这样的文件-user-LoadError 已尝试请求。/user,它会给我原始错误消息。尝试添加Ruby:未初始化常量(NameError),ruby,Ruby,我在一个目录中有2个文件: user.rb 在sep文件bot.rb中,我有: 需要相对的“用户” User.new.get_userid 然而,这给了我: 未初始化的常量松弛::客户端名称错误 我试过使用require user,它给了我-require':无法加载这样的文件-user-LoadError 已尝试请求。/user,它会给我原始错误消息。尝试添加 require 'slack-ruby-client' 您需要在这里使用Slack::Web::Client。因此user.rb中的
require 'slack-ruby-client'
您需要在这里使用Slack::Web::Client。因此user.rb中的最终代码如下所示
require 'slack-ruby-client'
class User
def initialize
@token = SECRETS_DATA.fetch('token')
@client = Slack::Web::Client.new token: @token
end
def get_user(userid)
userinfo = @client.users_info(user: userid)['user']['profile']['email']
userinfo.split('@').first
end
end
哦,请不要忘记运行gem安装slack ruby客户端
如果需要,我们可以用同样的方式使用RealTimeClient
文档:我尝试将slack api require'slack'添加到bot.rb文件中。我也试过你的建议。还是一样的错误。
require 'slack-ruby-client'
class User
def initialize
@token = SECRETS_DATA.fetch('token')
@client = Slack::Web::Client.new token: @token
end
def get_user(userid)
userinfo = @client.users_info(user: userid)['user']['profile']['email']
userinfo.split('@').first
end
end