新建记录
保存前自定义数据
有时,你需要在保存到数据库之前修改表单数据。你可以定义 mutateFormDataBeforeCreate() 方法,使其接收 $data 数组作为参数,并返回修改过的版本:
protected function mutateFormDataBeforeCreate(array $data): array
{
$data['user_id'] = auth()->id();
return $data;
}
此外,如果你是通过模态框 Action 新建记录,请查阅Action 文档。
自定义新建过程
你可以在新建页面类中使用 handleRecordCreation() 方法调整记录创建方式:
use Illuminate\Database\Eloquent\Model;
protected function handleRecordCreation(array $data): Model
{
return static::getModel()::create($data);
}
此外,如果你是通过模态框 Action 新建记录,请查阅Action 文档。
自定义重定向
默认情况下,表单保存后,用户会被重定向到资源编辑页,或查看页(当其存在时)。
你可以重写 getRedirectUrl() 自定义表单保存后的跳转页面。
比如,表单可以跳转回列表页:
protected function getRedirectUrl(): string
{
return $this->getResource()::getUrl('index');
}