源码篇 - Dcat Admin 之 Grid <一>

616 阅读1分钟

DcatAdmin 是一个 基于 Laravel 的后台管理框架。 然而,GridDcatAdmin 封装好的一个用代码直接输出html表格、表单的方法类。

image.png

这是一个调用 Grid的实际操作 Grid::make(new Book(), function (Grid $grid){})我们传入第一个参数是 new Book(),这个 new Book() 是一个 Repositories的一个实例。第二个参数是一个匿名函数,匿名函数的参数是Grid的一个实例,然后所有的操作都在这个匿名函数里面了。

image.png

第一个参数是什么东西?

image.png

暂时不深究下去,可以看到注释,有一个类成员 $eloquentClass 是一个 带命名空间的BookModel类的完整字符串App\Models\Book

第二个参数才是重点!

这个时候我们就需要看看 Grid::make方法了

image.png

文件路径在 ./vendor/dcat/laravel-admin/src/Grid.php

image.png

这是一个初始化 Gird的操作,所以我们直接看构造函数

image.png

这个构造函数第一个参数就是文章前面提到的Repositories的实例new Book()

第二个参数 就是function (Grid $grid){})这个闭包函数

今天就到这里吧,我也是刚接触到这个框架,一遍学习一遍分享,共勉吧。