📜  laravel attach - PHP (1)

📅  最后修改于: 2023-12-03 15:32:32.929000             🧑  作者: Mango

Laravel Attach - PHP

Laravel Attach 是一个 Laravel 的插件,用于让 Eloquent 模型关联。它提供了一种简单的方法去连接一个模型到多个模型,而且非常容易扩展。

安装

使用 Composer 安装:

composer require zihaohs/laravel-attach

安装完成后,向 providers 数组和 aliases 数组添加服务提供者和门面。

// config/app.php

'providers' => [
    Zihaohs\Attaches\AttachesServiceProvider::class,
],

'aliases' => [
    'Attach' => Zihaohs\Attaches\Facades\Attach::class,
],
发布配置文件

执行以下命令来发布配置文件:

php artisan vendor:publish --provider="Zihaohs\Attaches\AttachesServiceProvider"

这个命令将在 config 目录下创建一个 attaches.php 文件。

用法
模型定义

在 Eloquent 模型中使用 HasAttachments trait。

<?php

namespace App;

use Zihaohs\Attaches\Traits\HasAttachments;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasAttachments;

    // ...
}
添加关联

在 Eloquent 模型中使用 attach 方法来添加关联:

$post->attach($attachment);

$attachment 可以是一个 Lobio\Ormic\File 类型的实例。

获取关联

在 Eloquent 模型中使用 attachments 方法来获取关联:

$post->attachments()
获取真实路径

File 实例中使用 getRealPath 方法来获取真实路径:

$attachment->getRealPath()
进阶使用

请参考 Laravel Attach 的 GitHub 仓库 获取更多有关 Laravel Attach 的信息。

备注

以上提供的只是 Laravel Attach 的基本使用方法,更多细节和方法请参考官方文档