|
|
1
3
我认为你目前的解决办法行不通。如果ServiceImplementation是抽象的,那么关联的类将指向什么?如果ServiceImplementation没有将pk持久化到数据库中,那么另一端是如何工作的?也许我错过了什么。 编辑:哎呀,我原来的也不行。但这个想法仍然存在。代替一个模块,继续使用带有STI的服务,而不是多态性,并用单独的实现来扩展它。我认为您被STI和跨不同实现的一堆未使用的列困住了,或者重新思考了一般的服务关系。您拥有的委托解决方案可能作为一个单独的ActiveRecord工作,但是如果它必须有一个has\u one关系,我不认为它是如何作为抽象的工作的。 编辑:那么为什么不保留delgates而不是原来的抽象解决方案呢?对于MailServiceDelegate和BackupServiceDelegate,您必须有单独的表——如果您想用纯STI避免所有的空列,就不知道如何绕过这些表。您可以使用带有delgate类的模块来捕获常见关系和验证等。很抱歉,我花了几次时间才解决了您的问题:
|
|
|
2
0
我想下面的办法行得通
在用.rb
|
|
Fernando Chu · 一个变量有多个可能的类?[关闭] 1 年前 |
|
|
Amaterastis · 基类接受子类和内部子类的模板参数 1 年前 |
|
|
Rishab Negi · 这个关键字在抽象类中是如何工作的 1 年前 |
|
|
dEmigOd · 类层次结构中的运算符重载解析 1 年前 |
|
|
TableTopRug · 如何从Kotlin中的密封类继承? 1 年前 |
|
|
hasdrubal · 抽象基类函数指针python 2 年前 |
|
|
Josh · 通过反思访问孩子的财产 2 年前 |