Laravel中获取模型相关信息扩展包:laravel-model-info

2023-06-01 00:00:00 模型 扩展 相关信息

Laravel Model Info是Spatie的一个包,用于获取Laravel项目中所有模型的信息。

如果您正在构建需要以编程方式检查模型的功能,此包会很有帮助。


例如,您可以访问许多重要的详细信息,如数据库表名、属性、关系等:

use Spatie\ModelInfo\ModelInfo;
 
$model = ModelInfo::for(Post::class);
//返回 `Attribute` 对象的集合
$model->attributes;
//返回 `Relation` 对象的集合
$model->relations;

// etc.
 
//属性和关系是集合
$model->attributes->first()->name; // title
$model->attributes->first()->type; // string(255)
$model->attributes->first()->phpType; // string


我在这个包中注意到的一个很棒的功能是获取项目中的所有模型:

//返回所有应用模型的集合
$models = ModelFinder::all();


要了解更多信息,请查看 Freek Van der Herten 的文章获取有关Laravel应用程序中所有模型的信息。

https://freek.dev/2332-getting-information-about-all-the-models-in-your-laravel-app

您可以在GitHub上的spatie/laravel-model-info获取文档和源代码。

https://github.com/spatie/laravel-model-info

相关文章