我只是将friendly_id添加到我的应用程序中,除了一行代码会给我一个错误之外,一切都很顺利。
当我试图从我最爱的视图中订购葡萄酒时,我会得到以下错误。
can't find record with friendly id: "#<Wine::ActiveRecord_AssociationRelation:0x6133278>"
private
def set_wine
@wine = Wine.friendly.find(params[:id])
end在我的葡萄酒视图中,这是一条直线:
<div class="col-md-3 right">
<%= link_to "Bestellen", wine_path(@wines), class: "btn btn-form" %>
</div>发布于 2018-11-05 13:32:13
无法用友好的id: Wine::ActiveRecord_AssociationRelation:0x6133278找到记录
问题是@wines是一个集合,而不是单个对象。因此,当您拥有wine_path(@wines)时,集合将作为一个id传递给控制器方法,而friendly_id则需要一个记录。你必须改变
<%= link_to "Bestellen", wine_path(@wines), class: "btn btn-form" %>至
<%= link_to "Bestellen", wine_path(favorite.wine), class: "btn btn-form" %>以解决错误。
发布于 2021-11-24 13:32:26
当您还没有更新数据库中友好id之前的记录时,也可能会触发此错误。
然后从rails控制台运行YouModel.find_each(&:save)。
https://stackoverflow.com/questions/53154792
复制相似问题