php – Laravel 5雄辩的模型不会让我更新

php – Laravel 5雄辩的模型不会让我更新,第1张

概述我确实在数据库中设置了邀请表.我将它用于其他目的,例如添加更多…… 我的目标:用字段的新值更新第一条记录: 我试过了: $invitation = new MemberInvitation();$invitation1 = $invitation->find(1);$invitation1->status = 'clicked';$invitation1->save(); 并且: $invi 我确实在数据库中设置了邀请表.我将它用于其他目的,例如添加更多……

我的目标:用字段的新值更新第一条记录:

我试过了:

$invitation = new MemberInvitation();$invitation1 = $invitation->find(1);$invitation1->status = 'clicked';$invitation1->save();

并且:

$invitation1 = \App\Model\MemberInvitation::find(1);$invitation1->status = 'clicked';$invitation1->save();

两者都以:

Creating default object from empty value

编辑:

这段代码正确地工作和更新了我的记录 – 我不能通过Eloquent的模型来做到这一点:

\DB::table('member_invitations')->where('ID','=',$member_invitation->ID)                    ->update(array('status' => 'clicked','member_ID' => $member->ID));

我错过了什么?

解决方法 find(1)并不意味着“给我第一条记录”,它意味着“给我第一条记录,其中ID = 1”.如果您没有ID为1的记录,则find(1)将返回null.当您尝试在null上设置属性时,您会收到一条PHP警告消息“从空值创建默认对象”.

如果你真的只想获得第一条记录,你可以使用first()方法:

$invitation = \App\Model\MemberInvitation::first();

如果需要获取具有特定ID的记录,可以使用find()方法.例如,要将您的工作数据库代码转换为Eloquent,它看起来像:

$invitation = \App\Model\MemberInvitation::find($member_invitation->ID);$invitation->status = 'clicked';$invitation->member_ID = $member->ID;$invitation->save();
总结

以上是内存溢出为你收集整理的php – Laravel 5雄辩的模型不会让我更新全部内容,希望文章能够帮你解决php – Laravel 5雄辩的模型不会让我更新所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1256201.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存