2011-05-20 107 views
0

我在rails 3 web應用程序上開發了一個ruby,我最初依賴於本地存儲在我的計算機中的sqlite3數據庫,然後部署它。我在會話中存儲了某些信息以使我的網絡應用程序的某些部分能夠正常工作。使用mysql2數據庫在會話中存儲數據

但是在部署之後,我決定使用xeround.com的mysql2數據庫,並且我的網站崩潰了。起初,我收到了一條錯誤消息,說我數據庫中沒有會話表。所以我創建了一個會話表。現在它說

ActiveRecord::StatementInvalid in ClientController#index 

Mysql2::Error: Unknown column 'sessions.session_id' in 'where clause': SELECT `sessions`.* FROM `sessions` WHERE `sessions`.`session_id` = '................' LIMIT 1 

我需要在mysql2數據庫中的新會話表中手動創建適當的列嗎?還是有另一種方法來解決它?

+0

您是否手動創建了表格'sessions'?或者您是通過遷移創建的?如果您已經生成了遷移,那麼您是否可以粘貼您編寫的代碼來創建該表及其列? – Surya 2011-05-20 11:50:34

回答

0

似乎缺少的是session_id在您的表格中進行檢查sessions它是否有名爲的session_id?如果它不存在,那麼通過遷移來創建它。據我說,你不應該做任何手動的事情,未來如果你想做一些改變或回滾表格,你可能會遇到一些問題。