dyanakiev/laravel-metable

一个用于将任意数据附加到Eloquent模型的包

10.1.3 2023-04-04 13:21 UTC

README

Coveralls StyleCI Packagist

Laravel-Metable是一个用于轻松将任意数据附加到Eloquent模型的包。

特性

  • 一对一多态关系允许在不调整数据库模式的情况下将数据附加到Eloquent模型。
  • 类型转换系统允许存储和检索多种不同标量和对象类型的数据。有关支持类型的列表,请参阅文档。

示例用法

将一些元数据附加到Eloquent模型

$post = Post::create($this->request->input());
$post->setMeta('color', 'blue');

通过其元数据查询模型

$post = Post::whereMeta('color', 'blue');

从模型中检索元数据

$value = $post->getMeta('color');

安装

  1. 使用Composer将包添加到您的Laravel应用程序中
composer require plank/laravel-metable
  1. config/app.php中注册包的服务提供者。在Laravel 5.5及更高版本中,如果启用了包自动发现,则可以跳过此步骤。
'providers' => [
    ...
    Plank\Metable\MetableServiceProvider::class,
    ...
];
  1. 使用Artisan发布包的配置文件(config/metable.php)。
php artisan vendor:publish --provider="Plank\Metable\MetableServiceProvider"
  1. 运行迁移以将所需的表添加到数据库中。
php artisan migrate
  1. Plank\Metable\Metable特质添加到任何您想附加元数据的Eloquent模型类中。
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Plank\Metable\Metable;

class Post extends Model
{
    use Metable;

    //...
}

文档

完整文档可在ReadTheDocs上找到。

许可

本软件包在MIT许可(MIT)下发布。

关于Plank

Plank是一家位于加拿大蒙特利尔的网页开发代理机构。