将自定义数据添加到 Laravel 中的通知表

时间:2021-01-12 22:45:34

标签: notifications laravel-8 artisan-migrate

我正在尝试向 Laravel 8 中的通知表添加自定义列,以存储实际创建通知的用户。例如,用户 1 喜欢您的“帖子”。通知系统默认工作来存储只是“发布”用户所有者,而不是创建通知的实际用户(正确的方法是通知帖子所有者)。 我添加到通知表的foreignId 列,但我无法插入数据。

public function up()
{
    Schema::create('notifications', function (Blueprint $table) {
        $table->uuid('id')->primary();
        $table->string('type');
        $table->morphs('notifiable');
        $table->text('data');
        $table->foreignId('user_id')->constrained()->onDelete('cascade');
        $table->timestamp('read_at')->nullable();
        $table->timestamps();
    });
}

我尝试创建一个通知模型并创建一个“belongsTo”关系,但没有成功。

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Notificatin extends Model
{
    use HasFactory;

    public function users()
    {
        return $this->belongsTo(User::class, 'notifiable_id');
    }
}

有什么建议吗?

0 个答案:

没有答案