【发布时间】:2016-01-08 07:29:04
【问题描述】:
在我的应用程序中有食谱和配料,所以一个食谱可以有很多配料,而且一个配料可以在很多食谱中使用,一切都很好,当我创建食谱时,有一个名为 Has_ingredient 的表,其中保存了每个食谱的每种配料.
问题是,现在当我尝试销毁配方时出现错误,因为我需要在删除配方之前销毁 Has_ingredient 中与该配方关联的记录。
所以在我的模型中我创建了这样的东西
class Recipe < ActiveRecord::Base
before_destroy :destroy_ingredents
....
....
....
def destroy_ingredents
HasIngredent.destroy(recipe_id: self.id)
end
好吧,现在我收到这个错误:OCIERROR: ORA-00904。
所以现在问题不是 Rails,而是数据库(我正在使用 Oracle),但我很确定问题是我如何使用 destroy 方法,但我不知道如何正确使用它来删除与关联的 has_ingredent 表中的每条记录某些食谱
【问题讨论】:
标签: ruby-on-rails ruby oracle