我是rails的新手,我正在使用rails Polymorphic association,我遇到了一个问题 我有两个型号EmployeeTable和ProductTable。两者都有图片模型中的一些图片
class Picture < ActiveRecord::Base
belongs_to :imageable, polymorphic: true
end
class EmployeeTable < ActiveRecord::Base
has_many :pictures, as: :imageable
end
class ProductTable < ActiveRecord::Base
has_many :pictures, as: :imageable
end
图片imagable_id和imagable_type中有两列。当我在表中创建一个条目时,它将imagable_type存储为“EmployeeTable”或“ProductTable”。我可以将这些名称更改为“员工”和“产品”等任何其他名称。
提前致谢
答案 0 :(得分:0)
要在不使用表的情况下检索image_type,可以在模型中添加此方法。保存时更改已关联的型号名称将导致查询时出现问题
def neat_imageable_type
self.imageable_type.gsub("Table", "").downcase
end