<?php namespace App\Models; use App\Models\Concerns\Reportable; use Illuminate\Database\Eloquent\Model; /** * Change proposal * * @property int $id * @property \Carbon\Carbon $created_at * @property \Carbon\Carbon $updated_at * @property int $table_id * @property int $revision_id * @property int $author_id * @property string $note * @property object $changes - JSONB * @property-read User $author * @property-read Table $table * @property-read Revision $revision */ class Proposal extends Model { use Reportable; protected $guarded = []; /** Authoring user */ public function author() { return $this->belongsTo(User::class, 'author_id'); } /** Target revision */ public function revision() { return $this->belongsTo(Revision::class); } /** Target table (that this was submitted to) */ public function table() { return $this->belongsTo(Table::class); } }