【发布时间】:2018-06-10 09:48:39
【问题描述】:
我觉得我遗漏了一些非常明显的东西,但我正在做的是在我的用户模型上测试 destroy 路由。
当我尝试@user.destroy 时,我得到以下异常:
*** ActiveRecord::InvalidForeignKey Exception: SQLite3::ConstraintException: FOREIGN KEY constraint failed: DELETE FROM "users" WHERE "users"."id" = ?
唯一的问题是,我已经为has_many 关联设置了dependent: :destroy,并且我也尝试了:delete_all 无济于事。这是我目前与此模型的唯一关联。
有什么想法吗?我敢肯定它很简单
【问题讨论】:
-
请阅读this accepted answer。我建议您的设置存在问题,例如
dependent选项不起作用。 -
好像不是这样,我没有
through依赖 -
您是否在测试中创建了另一个引用用户的对象?当我没有正确安排人际关系时,我遇到了类似的问题。
标签: ruby-on-rails activerecord sqlite