2014-02-15 2 views
1

Я пытаюсь изготовить Twitter :: Tweet class из щебетать Twitter. И я получил эту ошибкуНевозможно изготовить Twitter :: Tweet из twitter gem используя драгоценный камень Fabrication

undefined method `id' for #<Fabrication::Schematic::Runner:0x00000102da7c28> 

Это мой Fabricator.

Fabricator(:twitter_tweet, from: 'Twitter::Tweet', class_name: 'Twitter::Tweet') do 
    id "1" 
    text "tweet" 
    created_at Time.now 
    user { 
     id "created_by_social_id" 
     name "name" 
     location "location" 
    } 
    entites { 
     user_mentions nil 
    } 
end 

Но я мог бы создать его вручную, как это.

tweet = Twitter::Tweet.new(:id => "1", 
     :created_at => Time.now.to_s, 
     :text => "text", 
     :user => { 
     :id => "created_by_social_id", 
     :name => "name", 
     :location => "location" 
     }, 
     :entities => {:user_mentions => user_mentions}) 

Пропустил ли я что-нибудь очевидное?

+0

Ar e вы подаете в суд, у вас есть метод 'id' в' Tweet.new'? Вы пытаетесь создать новый твит, а не объект ActiveRecord. Можете ли вы прояснить, пытаетесь ли вы создать запись в твите или в базе данных? –

+0

Я просто пытаюсь создать новый твит. Я пытаюсь создать объект из этого Gem https://github.com/sferik/twitter/blob/master/lib/twitter/tweet.rb – toy

+0

У меня такая же проблема с драгоценностью Trello. Я подозреваю, что «id», на котором вы застряли, - это внутри 'user' ... Вы решили это? – Nick

ответ

1

Twitter

Я думаю, вы получаете путать о том, как use the Twitter gem to create Tweets:

client.update("I'm tweeting with @gem!") 

Это, как вы можете создать новый твит. Это основано на идее, что вы уже initialized an object &, связанный с переменной client:

#config/initializers/twitter.rb 
client = Twitter::REST::Client.new do |config| 
    config.consumer_key = "YOUR_CONSUMER_KEY" 
    config.consumer_secret = "YOUR_CONSUMER_SECRET" 
end 

Код

Хотя не прямой ответ на использование fabrication, я хотел бы предложить вам нужно адаптируйте свой синтаксис для размещения загрузки этого драгоценного камня (подключение к API-интерфейсу Twitter), а затем используйте fabrication, чтобы отсортировать его.

Смежные вопросы