获取模型子类型的实例

的赏金 [https://stackoverflow.com/help/bounty]3 天后到期。这个问题的答案有资格获得 + 500 的声誉奖励。 ClmentM [/users/2627459/clmentm]想要引起更多关注对于这个问题。 我有一个Animal model, based on the animal表。 此表包含一个type字段,可以包含值,例如猫或狗. 我希望能够创建以下对象: 类动物扩展模型 {} 类狗延伸动物 {} 类猫延伸动物 {} 然而,能够像这样捕捉动物: $ Animal = Animal:: find ($ id); 但是在哪里$animal would be an instance of Dog or Cat depending on the type field, that I can check using instance of或者将使用类型暗示的方法。原因是 90% 的代码是共享的,但是一个可以吠叫,另一个可以喵喵叫。 我知道我能做Dog::find($id), but it's not what I want : I can determi ……

共5个回答, 标签: php laravel eloquent
如何在数据透视表中搜索两个用户拥有的行

抱歉,如果这是一个愚蠢的问题,但我是新来的 Laravel。 我有两个模型和一个透视表: 用户 id | name | password 公共功能对话 ():?归属口 { 返回 $ this-> belongsToMany (会话:: class)-> with 时间戳 (); } 对话 id 公共功能用户 ():?归属口 { 返回 $ this-> belongsToMany (用户:: class)-> with 时间戳 (); } 对话用户 id | conversation_id | user_id 我创建一个对话,并分配用户同步像这样: $ User-> conversions ()-> syncWithoutDetaching ($ conversation); $ TargetUser-> conversions ()-> syncwithout detaching ($ conversation); 用户可以有许多对话,对话可以有多个用户。这很好,但是当我想与两个特定的用户进行对话时,我不知道利用 ORM 找到他们都分开的对话的最佳方式。 我目前正在使用下一个方 ……

共1个回答, 标签: php laravel eloquent laravel-5.8
如何使用 groupBy 汇总数据

我有一个关于汇总数据的问题 (就像 excel 中的数据透视表) 我有一个带有模型 “员工” 的员工表 这里的代码查找特定范围内的数据 $ Latelist = 员工:: 其中 ('日期',[$ searchfrom,$ searchtill]) -> 在哪里 ('clockin','!=',"") -> 在哪里 ('迟到','!=',"") -> Get (); 我的问题是如何在 excel 中总结数据,如数据透视表? 将多个名称删除为 1 个名称和延迟总数 输出数据应为 名称 | totalLate ------------------------- 名称 1 | 3 名称 2 | 2 名称 3 | 5 谢谢 ……

共1个回答, 标签: mysql laravel eloquent
Laravel 雄辩保存不更新字段具有双重值

我有一个问题,laravel 雄辩不保存更新的字段,当我调用保存函数时,我的例子是: $ User-> solde = $ user-> solde 2000; $ User-> save (); Solde 字段是数据库中的双类型,在更新 solde 上雄辩而不是触发事件。 ……

共1个回答, 标签: laravel eloquent query-builder
如何映射递归 laravel 集合

我有一个有字段的类别模型: Id 姓名 Parent_id 儿童 日期 这里childrens太关系集合对象了,我只能得到像这样需要的字段: $ 类别-> 地图 (函数 ($ cat) { 【退货】 “Id” => $ cat-> id, “Name” => $ cat-> name, “Children'” => $ cat-> map (函数 ($ child) { 【退货】 “Id” => $ child-> id, “Name” => $ child-> name, $ Child-> map () ]; })-> ToArray () ]; })-> ToArray (); 如果类别子类别也有儿童,我如何再次进行此操作? ……

共0个回答, 标签: laravel eloquent