我正在做一个小项目,我有点卡住了。我已经在网上遵循了一些教程来让事情动起来,这就是我想出的。在使用 Twitter 进行身份验证和使用 Twitter gem 运行类似的东西时,一切正常;
current_user.twitter.home_timeline(count:10)
但是,由于 Twitter 有限制,我决定使用 Omniauth 进行身份验证的“current_user”,他/她的推文将通过 User_id 保存到与该用户相关的数据库中。这是我到目前为止所得到的;
控制器:
def pull
current_user.newtweets.pull_tweets
end
模型(tweets.rb)
class Newtweets < ActiveRecord::Base
attr_accessible :content, :followers, :retweets, :screen_name, :time_date, :tweet_id,
:user_id
belongs_to :user
def self.pull_tweets
Twitter.home_timeline(since_id: maximum(:tweet_id)).each do |tweet|
unless exists?(tweet_id: tweet.id)
create!(
tweet_id: tweet.id,
followers: tweet.user.followers_count,
retweets: tweet.retweet_count,
time_date: tweet.created_at,
content: tweet.text,
screen_name: tweet.user.screen_name,
)
end
end
end
模型(用户.rb)
...
has_many :newtweets
...
路线:
match 'refresh' => 'tweet#pull'
所以,我对此很陌生,但这就是我到目前为止所构建的。上面的设置确实出错了;“未初始化的常量 User::Newtweet”
现在,如果我去控制器并替换控制器中的以下行;def pull current_user.newtweets.pull_tweets.limit(100) 结束
和;
def pull
Newtweets.pull_tweets
end
我得到另一个错误;无法验证您的身份
对此的任何帮助都会很棒。