文章目录
这里是添加的操作
1.第一个框是实现三级联动
2.第二个框是根据关联关系添加另一张表的子段,还有隐藏字段并设置默认值
3.第三个框就是忽略的字段,这里边写的所有字段,都会直接添加到数据库,如果数据库么有这个字段就会报错
这是俩个表的数据
要实现获取添加的这个商品的所有父类
实现跨表的字段获取数据
下面这俩个框就是实现上面的俩个需求的代码
首先我们看一下商品分类的做法
这个value就是从数据库获取出来的分类id的值
然后通过模型查询这一组数据
最后有一个full_name这个实在分类模型里边定义的访问器,在之前应该说过,就是获取所有分类值得一个获取器
详解full_name实现过程
首先在控制器会直接调用full_name
1.在getFullNameAttribute的第一行代码里边可以看到$ this->ancestors
2.$ this->ancestors会直接调用getAncestorsAttribute这个方法,在这里里边查询出这个分类的所有父级分类
3.getAncestorsAttribute这里里边有$ this->possess_ids同样他也会调用上边的getPossessIdsAttribute这个方法,从而把数据库possess这个字段进行处理,转为数组,从而在getAncestorsAttribute这里可以获取到所有的父级
4.最后在getFullNameAttribute这里边使用pluck只获取name的这个字段
以上就是实现商品的所有父级
实现商品主图显示
最后就是实现这个图片了
实现代码
参考文档:https://laravel-admin.org/docs/zh/model-grid.md
这里的prctures就是goods模型里边定义的关联关系
以上就是实现的所有过程,只提供思路,不提供素材跟源码,谢谢