Rails中调用TwitterAccount实例的me方法报错,问题出在哪里?
错误原因及解决方法
错误的核心是你混淆了两个不同类的实例:
me方法是定义在TwitterClient这个独立工具类里的- 你调用的
c.me中的c是TwitterAccount模型的实例,这个类并没有定义me方法,所以触发了undefined method错误
正确的使用方式
你需要先基于TwitterAccount实例创建TwitterClient的实例,再调用me方法:
# 获取TwitterAccount实例 c = TwitterAccount.first # 创建TwitterClient实例并传入TwitterAccount对象 client = TwitterClient.new(c) # 调用TwitterClient的me方法 client.me
简单来说,TwitterClient是一个需要依赖TwitterAccount来初始化的工具类,两者属于不同的类,各自的方法不能直接跨实例调用。
内容的提问来源于stack exchange,提问作者Jerome
相关产品推荐
相关产品推荐

