0

在我拉了一个 rake db:migrate:reset 之后,一些代码停止工作。当试图查看我的画廊索引页面时,我得到: Mysql2::Error: Unknown column 'photos.gallery_id' in 'where clause': SELECT COUNT(*) FROM photos WHERE photosgallery_id= 1

如果我从 index.html 中删除一行编码,它将起作用: <%= gallery.photos.size %>

我没有修改任何代码。这一切都是在我进行重置后发生的。很好奇如何修复它。

索引.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”。

4

1 回答 1

1

就像错误所说的那样,“照片”表中没有“gallery_id”列。您可以尝试检查数据库并检查它是否存在。你可以试试:

rails c
> Photo

并查看是否有一个名为“gallery_id”的字段。

您应该尝试运行rake db:migrate.

于 2013-04-05T18:46:08.203 回答