2013-04-05 44 views
0

當我拉出rake db:migrate:reset後,一些代碼停止工作。當試圖查看我的畫廊索引頁時,我得到:Mysql2 ::錯誤:'where子句'中的未知列'photos.gallery_id':SELECT COUNT(*)FROM photos WHERE photosgallery_id = 1做db之後未知的列'photos.gallery_id':reset

如果刪除從index.html的它將工作編碼之一行:<%= gallery.photos.size%>

我沒有修改任何代碼。這一切都發生在我進行重置之後。好奇如何解決它。

的index.html:

<% for gallery in @galleries %> 
    <div class="gallery"> 
     <h2><%= link_to gallery.name, gallery %></h2> 
     Photos: <%= gallery.photos.size %> 
    </div> 
<% end %> 

<p><%= link_to "New Gallery", new_gallery_path %></p> 

正確的列是 「gallery_id」 所以我不知道爲什麼它正試圖拉 「photos.gallery_id」。

+0

您的圖庫表格是否有photo_id列? – Catfish 2013-04-05 18:26:57

回答

1

就像錯誤說的那樣,'照片'表中沒有'gallery_id'列。你可以嘗試檢查數據庫並檢查它是否存在。你可以嘗試:

rails c 
> Photo 

然後看看是否有一個名爲'gallery_id'的字段。您可以嘗試運行rake db:migrate

+0

我不得不將gallery_id讀到表格中。謝謝! – pwz2000 2013-04-05 18:51:02