Я создаю приложение Twitter, и каждый раз, когда пользователь обновляет страницу, он перезагружает новейшие сообщения из Twitter и сохраняет их в локальной базе данных, если они уже не были созданы ранее. Это хорошо работает в среде разработки (база данных: sqlite3), но в рабочей среде (mysql) она всегда создает сообщения снова, даже если они уже созданы. Создание сообщенияОтладка Rails в рабочей среде
проверяется twitter_id, что каждое сообщение имеет:
msg = Message.find_by_twitter_id(message_hash['id'].to_i)
if msg.nil?
# creates new message from message_hash (and possibly new user too)
end
msg.save
По-видимому, в производственной среде, он не в состоянии найти сообщения от щебета ид по какой-то причине (когда я смотрю на базе данных она была избавлена все атрибуты правильно раньше).
С этим длинным введением, я думаю, мой главный вопрос: как мне отладить это? (Если у вас уже есть ответ на основную проблему, конечно же :) Когда я смотрю в production.log, это только показывает, что-то вроде:
Processing MainPageController#feeds (for 91.154.7.200 at 2010-01-16 14:35:36) [GET]
Rendering template within layouts/application
Rendering main_page/feeds
Completed in 9774ms (View: 164, DB: 874) | 200 OK [http://www.tweets.vidious.net/]
... но не запросов базы данных, logger.debug тексты или все, что могло бы помочь мне найти проблему.
Почему вы не используете MySQL в разработке тоже, из интереса? –
Что означает хэш сообщений? – Eimantas
John, sqlite3 поставляется по умолчанию ... Но, возможно, будет проще использовать такую же базу данных как в разработке, так и в производстве. – JussiR