我正在尝试向 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');
}
}
有什么建议吗?