FormSubmission::class, 'fk' => 'form_submission_id']; } protected $fillable = [ 'form_submission_id', 'form_field_id', 'value', 'value_indexed', 'value_number', 'value_date', 'value_bool', 'value_anonymised', ]; /** @var array */ protected $casts = [ 'value' => 'array', 'value_number' => 'decimal:4', 'value_date' => 'date', 'value_bool' => 'bool', 'value_anonymised' => 'bool', ]; public function submission(): BelongsTo { return $this->belongsTo(FormSubmission::class, 'form_submission_id'); } public function field(): BelongsTo { return $this->belongsTo(FormField::class, 'form_field_id'); } public function options(): HasMany { return $this->hasMany(FormValueOption::class); } }