php - octobercms 任务调度不工作

标签 php laravel octobercms taskscheduler

我正在使用基于 Laravel 的 OctoberCMS。

我没有 SSH 访问我的服务器。

每天我都需要删除一些在注册后 24 小时内还没有激活帐户的用户,所以我在考虑使用任务调度(比如 cronjobs)

根据octobercms docs我应该在自定义组件的 Plugin.php 中创建一个用于注册任务调度的函数 - 我做到了。

我在没有激活帐户的情况下让注册用户超过 1 天。

但问题是 - 什么都没有发生。

是我在组件的plugin.php中的代码:

public function registerSchedule($schedule)
{
    $schedule->call(function() {
        \DB::connection('mydb')->table('u')->whereRaw('u.created_at <= NOW() - INTERVAL 1 DAY')->where('is_activated','=',0)->delete();
    })->everyMinute();
}

注意: 我已将 ->daily() 更改为 -> everyMinute() 以对其进行测试。

最佳答案

您可以对您的主机或类似 https://www.setcronjob.com 的服务使用经典的 HTTP 调用

在插件的根文件夹中创建一个 routes.php 文件,其中包含路由:

use Route;

Route::get('/yourprefix/delete_users', function () {
DB::connection('mydb')->table('u')->whereRaw('u.created_at <= NOW() - INTERVAL 1 DAY')->where('is_activated','=',0)->delete();
});

当然,你可以添加一些认证来保护它。

关于php - octobercms 任务调度不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43348951/

相关文章:

php - 在 October CMS 中连接到不同的数据库

php - Octobercms/Laravel 根据关系获取 id

php - Linkify 正则表达式函数 PHP 大胆的火球方法

php - 在 PHP MySQL 应用程序中一起使用持久和非持久连接

javascript - Google api php客户端代码不返回刷新 token

php - 如何从数组中删除换行之后的单词?

php - 我如何更改此查询以适合 Laravel 的查询生成器?

laravel - 如何在 Laravel Mix 中使用 PurifyCSS?

php - 如何防止 Laravel 在测试中触发事件?

php - 十月 cms,无法保存具有空值的模型