2012-11-01 3 views
1

레일 위 애플리케이션에 twitterstream API를 치고 특정 위치의 트윗을 데이터베이스에 삽입하는 레이크 작업을 실행해야하는 루비 애플리케이션이 있습니다. 이를 위해 uncat_tweets라는 테이블을 만들었습니다. 이레이크 작업이 데이터베이스에 삽입되지 않음

task :get_uncat_tweets => :environment do 
    TweetStream.configure do |c| 
    ... 
    ... 
    end 

    puts "#{UncatTweets.count} 

    client = TweetStream::Client.new() 
    client.locations(coordinates) do |status| 
    puts "#{status.text}" 
    t = UncatTweets.new() 
    t.text = status.text 
    t.long = ... 
    t.lat = ... 
    t.time = .... 
    t.save! 
    end 

내 uncat_tweets 모델은 다음과 같습니다처럼 내 레이크 작업은 같습니다

class UncatTweets < ActiveRecord::Base 
    attr_accessible :lat, :long, :text, :time, :user 
end 

내가 레이크 get_uncat_tweets에게 tweetstream 작업을 실행하고 트윗을 결선. 그러나 레이크 작업은 데이터베이스로 푸시되지 않습니다. 줄 puts "#{UncatTweets.count}"가 반환됩니다. 나는 레일 콘솔에 가서 UncatTweets의 더미 값을 삽입하려고 시도했다. 그러나 레이크 작업을 실행할 때 프로그램은 오류없이 진행되지만 결코 데이터베이스에 푸시되지 않습니다. 여기서 뭐하는거야? 이 문제에 대한 해결책을 찾을 수 없습니다. 제발 도와주세요

답변

0

이것이 레일스 3이라고 가정하면 레일즈 3 방법을 따라야합니다.

먼저 Rails 앱에서 db/seeds.rb을 엽니 다.

을 다음 rake db:seed

을 수행하여 실행 : 그래서처럼 설정 (위의 레이크 작업 기준)
관련 문제