作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我想从我的数据库中删除一些东西。该值引用了一些其他表。
错误是:
Mysql2::Error: Cannot delete or update a parent row: a foreign key constraint fails
如何正确解决这个问题?
如果我添加一些约束,例如删除级联,其他值将不会被删除,对吧?
编辑:
def delete
@vid = Movie.find params[:id]
@vid.delete
redirect_to :action => :add
end
更新模型
电影.rb
class Movie < ActiveRecord::Base
has_many :comments, :dependent => :destroy
has_many :ratings
belongs_to :channel
has_and_belongs_to_many :tags
has_and_belongs_to_many :categories
mount_uploader :video, MovieUploader
评论.rb
class Comment < ActiveRecord::Base
belongs_to :movie
belongs_to :user
belongs_to :rating
最佳答案
确保你的父级 Model.rb 有
has_many :model, :dependent => :delete_all
这可确保在删除父模型后删除所有数据。
比如你有 Post.rb 和 Comment.rb
后.rb
has_many :Comments, :dependent => :delete_all
因此,当您删除一个帖子时,所有相应的评论也将被删除。
希望对你有帮助
干杯
关于mysql - Rails 无法删除或更新父行 : a foreign key constraint fails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37025885/
我是一名优秀的程序员,十分优秀!