使用Rails 3.1.1,我在生產中偶然出現錯誤,因爲某些原因,mysql查詢中的綁定參數似乎不存在。該錯誤看起來像這樣:在Rails中綁定參數mySQL空
A ActiveRecord::StatementInvalid occurred in events#show:
Mysql::Error: : SELECT `events`.* FROM `events` WHERE `events`.`id` = ? LIMIT 1
activerecord (3.1.1) lib/active_record/connection_adapters/mysql_adapter.rb:890:in `execute
這是不一致的任何插入或選擇,所以我遇到了麻煩跟蹤它。有人有任何建議嗎?
編輯:更新更簡單的例子。
#events_controller.rb
def show
@event = Event.find(params[:id])
...
end
#called with parameters: {"action"=>"show", "controller"=>"events", "id"=>"26"}
您可以發佈用於生成'view_ips'表,'app/models/view_ip.rb'文件內容和'videos#viewed'操作的遷移嗎?這些將使我們能夠幫助你。 – 2012-03-10 18:49:47
您可以嘗試向模型對象添加驗證,以在問題到達數據庫之前將其陷入困境。我的猜測是,這實際上並不是MySQL相關的問題。 – GSnyder 2012-03-11 01:49:13
這是用於創建'ViewIp'的代碼,您在多少個地方執行該操作?向我們展示代碼。將日誌記錄添加到代碼中,以便知道哪個實際方法/條目會導致nil值。然後檢查哪裏可以成爲零。祝你好運。 – nathanvda 2012-03-12 22:39:19