fdt2k/laravel-taggable

3.0.2 2024-09-20 19:42 UTC

README

这是一个基于spatie/tags的包。

新功能包括:

  • 无json的翻译(另一个表格)
  • 动态绑定
  • 可嵌套标签

安装

用法

特性

<?php

namespace App\Models;


use Illuminate\Database\Eloquent\Model;
use KDA\Taggable\Models\Traits\HasTag;

class MyModel extends Model
{

    use HasTag;
 
   

}

动态绑定

您可以注册任何模型作为可标记模型,无需继承或任何特性。这可能会带来一些限制,尤其是与其他插件一起使用时。

为此,在app/Providers中创建一个新的Provider文件,或使用

php artisan make:provider TagsServiceProvider

在boot方法中,用任何模型类作为参数调用registerTaggableModel

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use KDA\Laravel\Attachments\Models\Attachment;
use KDA\Taggable\Facades\Tags;

class TagsServiceProvider extends ServiceProvider
{
   
    /**
     * Bootstrap services.
     *
     * @return void
     */
    public function boot()
    {
        //
        Tags::registerTaggableModel(Attachment::class);
    }
}

这将添加标签关系和创建/删除模型事件。当与这些绑定的模型交互时,您必须使用外观

标记模型

以下所有示例都是来自外观。但如果您使用模型特性,也可以直接调用模型中的任何方法而无需第一个参数。

贡献

查看Contrbiute.md