2013-05-02 1 views
1

Я использую Feedzirra для анализа кормов, а также метод для создания записей, как«опубликовала» время не права при анализе с использованием Feedzirra

class Feed < ActiveRecord::Base 

def create_entries rawfeed 
    self.entries.create(title: rawfeed.title, content:rawfeed.content, published:rawfeed.published, 
       url: rawfeed.url, guid: rawfeed.id) 
end 

Это работает отлично, за исключением «опубликовала» время на что созданном является действительно проводной: что-то вроде

2000-01-01 17:26:15 UTC 

Я проверяю вход, который я передал методу создания, он выглядит хорошо. Поэтому я просто не знаю, что пошло не так. Другие атрибуты являются нормальными, включая атрибут «created_at». У кого-нибудь есть предложение? Огромное спасибо.

ответ

1

Я встретил ту же проблему с mysql.

Поле «опубликовано» вашей записи определяется как: время? Посмотрите файл миграции для Entry, например db/migrate/XXXXX_create_entries.rb

После изменения :time на :datetime все будет хорошо.

Пожалуйста, попробуйте это решение.

P.S.

В разработке env проблема не возникает. Я думаю, что SQLite отличается тем, что обрабатывает поле :time по пути MySQL.

+0

Я ошибался ... Независимо от того, что вы использовали,: поле времени может обрабатывать только «ВРЕМЯ», без года, месяцев и дней. Я убедился в SQLite3 и MySQL. – xoyip

+0

Спасибо за ваше решение. Это действительно работает. Я не заметил ": datetime". – melodrama