【问题标题】:Are Laravel's Polymorphic Relations also suitable for true polymorphism?Laravel 的多态关系也适用于真正的多态吗?
【发布时间】:2018-03-26 15:56:22
【问题描述】:

为了更好地解释我自己:examples on Laravel.com 展示了 cmets 属于 视频帖子 的关系>。但是我说的是规范:不属于,而是是父表的规范。 (Subtyping) 使用 Laravel 的 Polymorphic Relations 仍然是最好的方法吗?

一个非常基本(并且可能很糟糕)的示例。

【问题讨论】:

    标签: laravel polymorphism


    【解决方案1】:

    有趣的问题。

    使用 Laravel 提供的多态关系完全可以满足您的需求。但是,您指的是表继承,这是另一回事。

    你可以让你的Animal模型有一个多态关系,可以是FishMamal,或者你可以让FishMamal属于Animal,并创建一个pass-通过模型。

    这完全取决于您将如何使用它。你会像查询animals 表一样通过Animal,还是从孩子那里去?

    【讨论】:

    • 我会离开孩子们。感谢您的回答。
    • 那么你只希望孩子属于动物。通过模型将对此有所帮助。这是我经常这样做的方式。
    • 你能告诉我更多关于这个通过模型的信息吗?
    • @ThomasMoors 如果提供的属性名称与数组匹配,您基本上会覆盖 getAttribute()setAttribute() 方法以引用 $this->animal->getAttribute/setAttribute()
    • 啊,听起来不错。所以基本上创建引用正确的子/父属性的访问器。
    猜你喜欢
    • 2021-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 2019-01-22
    • 2016-06-03
    • 2022-12-04
    相关资源
    最近更新 更多