在Rails中,单表继承(STI)是一种将多个相关模型存储在同一个表中的方法。要获取STI类的基类路由,可以使用Rails的内置方法base_class
。
首先,确保您的模型已经设置了单表继承。例如,假设您有一个名为Vehicle
的基类,以及一个名为Car
的子类。您的模型可能如下所示:
class Vehicle< ApplicationRecord
self.inheritance_column = :_type_disabled
end
class Car < Vehicle
end
要获取Car
类的基类路由,可以使用base_class
方法:
Car.base_class
这将返回Vehicle
类。
在这种情况下,获取STI类基类的路由可以通过以下方式实现:
class Vehicle< ApplicationRecord
self.inheritance_column = :_type_disabled
end
class Car < Vehicle
def self.base_class_route
base_class.to_s.underscore.pluralize
end
end
现在,您可以调用Car.base_class_route
来获取基类的路由,即vehicles
。
请注意,这个答案并没有涉及到云计算相关的知识,因为在Rails中获取STI类基类的路由是一个通用的编程问题,与云计算无关。
领取专属 10元无门槛券
手把手带您无忧上云