Laravel中获取模型相关信息扩展包:laravel-model-info
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
相关文章