ActiveRecord :: InvalidForeignKey:PG :: ForeignKeyViolation如何获取这个关系服务对象?

时间:2018-04-22 11:43:45

标签: ruby-on-rails activerecord associations ruby-on-rails-5.1

正如我在问题上提到的那样..

我知道这个错误,我知道协会如何运作

在我的情况下,我有ProductRepository模型,其属于:category

当然,当我试图删除此ProductRepository对象所属的此类别时,我会收到此错误并且它完全正常,我知道如何处理此异常

现在让我们说我有很多类型的模型 Product,ProductRepositoy,Post等...

我的问题 这里,如何获取属于类别的这些对象的列表,甚至获取类名数组或其他

因此,当我处理此异常时,我可以发送消息,要求用户在删除此类别之前检查并删除以下内容?

示例: 一旦用户删除类别...如果它有任何属于它的项目 他应该收到一条消息说请检查以下内容(帖子,产品等..

对于谁来回答,我所需要的只是如何获得这些对象甚至是类名

我可以做其余的事情

提前致谢:)

在删除问题所不需要的内容之后,这是文件

category.rb

class Category < ActiveRecord::Base
  has_many :brands, :dependent => :destroy
  has_many :products, :dependent => :destroy
end

product_respository.rb

class ProductRepository < ActiveRecord::Base
  belongs_to :category
  has_many :unity_folders, as: :product, dependent: :destroy

  validates :name, :price, :barcode, presence: true
  validates :barcode, uniqueness: true
end

product.rb

class Product < ActiveRecord::Base
  belongs_to :category
  belongs_to :brand
  belongs_to :organization
  has_many :unity_folders, as: :product, dependent: :destroy
  has_one :product3d
  belongs_to :shop
end

0 个答案:

没有答案