我正在使用Rails和PostgreSQL并且有一个基本的一对多关系,一个Auction
有很多Bid
s.但是,当我尝试删除拍卖(有出价)时,我收到以下错误:
错误:表"update"上的更新或删除违反了表"bid"上的外键约束"fk_rails_43e9021cbf".详细信息:密钥(id)=(1)仍然从表"出价"中引用.
删除没有出价的拍卖会没有错误.
令我困惑的部分是在我的Auction
模型中,我有:
has_many :bids, dependent: :destroy
Run Code Online (Sandbox Code Playgroud)
由于我有一个依赖的destroy子句,为什么我仍然会收到此错误?
编辑:我已经尝试删除整个数据库,然后重新创建/重新迁移所有内容 - 仍然得到相同的错误.
如果我有一个像这样的对象数组,我一直试图解决这个问题很长一段时间:
var my_array = [
Object {Project: A, Hours: 2},
Object {Project: B, Hours: 3},
Object {Project: C, Hours: 5},
Object {Project: A, Hours: 6},
Object {Project: C, Hours: 9}
]
Run Code Online (Sandbox Code Playgroud)
我想将具有相同键的所有对象合并到一个对象中,以便将它们的小时数相加:
预期产量:
my_array = [
Object {Project: A, Hours: 8}
Object {Project: B, Hours: 3}
Object {Project: C, Hours: 14}
]
Run Code Online (Sandbox Code Playgroud)
我该如何处理这个问题?我花了很长时间才能以这种方式格式化我的数据,这是最后一步!
我的尝试,我得到我循环数组,不知道如何处理对象的合并:
for (var i =0; i<my_array.length; i++) {
my_array[i].Project // access the object project key
my_array[i].Hours // need to increment hours
}
Run Code Online (Sandbox Code Playgroud)