ErrorException In HasMany.php line 137 : Invalid argument supplied for foreach ()

file
这个是什么原因造成的呢,代码检查好几遍了,laravel-admin用的最新版1.6

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
最佳答案

@张汉为 您好:

是encore/laravel-admin版本的问题,我使用1.6.3时还没报错误,但1.6.4和1.6.5皆回报错误。将 composer.json 中 encore/laravel-admin 的版本号改成 1.6.3并更新即可解决。

错误代码是https://github.com/z-song/laravel-admin/blame/master/src/Form/Field/HasMany.php 行137,原因是在改进问题improve: support multipleImage in NestedForm 时引发了这个错误,我已提出此问题了。

5年前 评论
讨论数量: 16
leo

目测是有驼峰命名的关联关系,Laravel-Admin 的 Bug

5年前 评论
张汉为

@leo 怎么解决呀

5年前 评论
张汉为

@leo 你是指的模型里面吗,模型里现在就一个hasMany一对多的函数
return $this->hasMany(ProductSku::class);

5年前 评论
leo

@张汉为 这个关系的方法名是什么

5年前 评论
张汉为

@leo
// 与商品SKU关联
public function skus()
{
return $this->hasMany(ProductSku::class);
}

5年前 评论
张汉为

@leo 我没有大写呀

5年前 评论
leo

@张汉为 那就不知道了。既然你没有按课程做,那可能性就非常多了,自己试着调试吧

5年前 评论
张汉为

@leo 全部按课程做的呀

5年前 评论
leo

@张汉为 课程里的 Laravel-Admin 是 1.5.x

5年前 评论
张汉为

@leo 那好吧,我试着去找找哪的问题

5年前 评论

@张汉为 您好:

是encore/laravel-admin版本的问题,我使用1.6.3时还没报错误,但1.6.4和1.6.5皆回报错误。将 composer.json 中 encore/laravel-admin 的版本号改成 1.6.3并更新即可解决。

错误代码是https://github.com/z-song/laravel-admin/blame/master/src/Form/Field/HasMany.php 行137,原因是在改进问题improve: support multipleImage in NestedForm 时引发了这个错误,我已提出此问题了。

5年前 评论
张汉为

@Chenshin 感谢热心的回答,调试了一天的时间,解决了换个版本就好

5年前 评论

@张汉为 麻烦说一下换的什么版本呗,我换了好几个版本都不行

5年前 评论
张汉为

@ananwenwen 1.6.4和1.6.5都不行,有bug,1.6.0-1.6.3是可以用的切换一下版本就好了

5年前 评论

关联模型中不使用驼峰命名即可

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!