我正在尝试为 Laravel Nova 实现一个状态字段:
所以,我有一个需要 10 秒的工作。
这是我的定义:
Status::make('Etat', 'job_state')
->loadingWhen(['waiting', 'running'])
->failedWhen(['failed']),
因此,当我的操作触发作业时,我将作业状态更新为
running
$missingData->job_state = "running";
$missingData->update();
这正在起作用。
但是当工作结束时,我用以下内容更新该字段:
$missingData->job_state = "finished";
$missingData->update();
但是如果不刷新页面,字段的状态将不会更新。是否可以在不刷新的情况下更改状态字段?
Nova 可以自动更新记录,无需刷新页面。这称为轮询,您可以在此处查看文档:https://nova.laravel.com/docs/resources/#resource-polling
基本上,您只需启用轮询即可:
/**
* Indicates whether the resource should automatically poll for new resources.
*
* @var bool
*/
public static $polling = true;
其他属性只是为了自定义一点,比如您想要的频率。