Ruby on rails Rails 4-迁移到Postgresql后出现CRUD错误

Ruby on rails Rails 4-迁移到Postgresql后出现CRUD错误,ruby-on-rails,postgresql,Ruby On Rails,Postgresql,我刚刚将我的数据库从sqlite迁移到postgresql,我遇到了销毁操作的一些问题,当数据库是sqlite时,销毁操作工作正常 请求的参数包含id值,并且该id存在于数据库中 虽然我看到了这个错误屏幕,但它会很好地破坏。 我不知道这是在抱怨什么 控制器 before_action :find_recipe, only: [:show, :edit, :update, :destroy] ... def destroy Recipe.destroy(params[:id]) re

我刚刚将我的数据库从sqlite迁移到postgresql,我遇到了销毁操作的一些问题,当数据库是sqlite时,销毁操作工作正常

请求的参数包含id值,并且该id存在于数据库中 虽然我看到了这个错误屏幕,但它会很好地破坏。 我不知道这是在抱怨什么

控制器

before_action :find_recipe, only: [:show, :edit, :update, :destroy]

...

def destroy
  Recipe.destroy(params[:id])
  redirect_to :back, notice: "Recipe successfully deleted"
end

private
  def find_recipe
    @recipe = Recipe.find(params[:id])
  end

此错误似乎与销毁无关,它似乎试图显示记录。最有可能的情况是,您在销毁该记录后重定向回了该记录的显示页面

流量:

  • /显示/5(单击销毁)
  • /销毁/5(销毁记录)
  • /show/5(通过重定向到:back,但ID不再存在)

谢谢。我想知道为什么它会抱怨表演。我在销毁行动中把你重定向到:back,这是我不该做的。现在一切都好了!