2013-12-10 3 views
-1

Я начал работать с Mongoid драгоценным камнем, но я получаю неинициализированный постоянную ошибкуUninitialized постоянная ошибка при работе с Mongoid жемчужину

Я определил документ твит

class Tweet 
    include Mongoid::Document 
    field :tweet_id, type: Int 
    field :created_at, type: DateTime 
    field :text, type: String   
    field :user_id, type: Int  

    embedded_in :user 
end 

Другой документ User

class User 
    include Mongoid::Document 
    field :name, type: String 
    field :screen_name, type: String 
    field :user_id, type: Int 

    embeds_many :tweets  
end 

Я хочу написать задачу rake для создания и вставки твитов в базу данных. Код для грабель задачи

У меня есть чириканье, хранящееся в файл, путь которого является @pathtofile

task :readtweet => :environment do 
    File.readlines(@pathtofile).each do |line| 
     line=line.chomp() 
     tweet_hash = JSON.parse(line) 
     Tweet.new(created_at: my_hash['created_at'], text: my_hash['text'])   
    end 
end 

Но каждый раз, когда я выполнить задачу рек это дает мне ошибку.

uninitialized constant Tweet::Int 
/home/c0mrade/testapp/app/models/tweet.rb:4:in `<class:Tweet>' 
/home/c0mrade/testapp/app/models/tweet.rb:2:in `<top (required)>' 
/home/c0mrade/testsapp/lib/tasks/data.rake:22:in `block (3 levels) in <top (required)>' 

Я следовал инструкциям на mongodb site

Может кто-нибудь помочь мне с этой ошибкой?

ответ

1

Должно ли это Integer вместо Int? Я не знаю, будет ли это исправлять вашу проблему здесь, но я не видел Int в любом из документов (пожалуйста, поправьте меня, если я ошибаюсь).

+0

Спасибо за указание! мне было глупо использовать Int. –

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