如何在 Laravel 队列中使用模型

2024-01-15

我正在尝试将邮件列表从 CSV 导入到我的数据库中。我的 Laravel 中有两个模型负责执行此操作:Target and Mailing (one Target有很多Mailings)

我正在使用带有 Beanstalkd 的队列系统。我在用着:

Queue::push('ImportCSV', array(
            'file' => $file->getClientOriginalName(),
            'target' => $name
    ));

为了推送我的工作,然后我有 ImportCSV 工作类:

class ImportCSV
{
public function fire($job, $data) 
{   
    Log::info("Starting to add {$data['target']} to database");

    $target = new Target();
    $target->name = $data['target'];
    $target->save();

    $reader = new \EasyCSV\Reader($data['file']);

    // There must be a Email field in CSV file
    /*if(!in_array('Email', $reader->getHeaders() ))
        throw new Exception("Email field not found", 1);*/

    while ($row = $reader->getRow())
    {
        $mailing = new Mailing();
        $mailing->target()->associate($target);
        $mailing->email = $row['Email'];
        $mailing->save();
    }

    Log::info("Mailing list {$target->name} added to database");

    $job->delete();
}
}

自从我在日志文件中收到这些消息以来,所有代码似乎都在工作

[2013-09-10 21:03:25] log.INFO: Starting to add TEst to database [] []
[2013-09-10 21:03:25] log.INFO: Mailing list TEst added to database [] []

但没有记录添加到我的数据库中。我应该如何在工作中使用模型?例如,我已经在控制器中测试了它,一切正常


由于您没有看到其他错误,我认为这是一个环境问题。

第一——环境

请确保您致电php artisan queue:listen (or queue:work,如果适用)正在使用正确的环境,因此使用正确的数据库:

$ php artisan queue:listen --env=YOUR_ENV

这是一篇关于在 Laravel 4 中设置队列 http://fideloper.com/ubuntu-beanstalkd-and-laravel4这可能对获取更多信息有帮助。

第二——命名空间

由于您(显然?)没有看到任何 PHP 错误,因此这种情况不太可能发生,但还有另一个想法:

如果您的类是命名空间的,您可能需要使用\字符来获取位于全局命名空间中的模型。

// From:
$mailing = new Mailing();

// To:
$mailing = new \Mailing();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Laravel 队列中使用模型 的相关文章

随机推荐

  • 如何解决“请求的 URL 被拒绝。请咨询您的管理员。”错误?

    我有一个 ASP 应用程序 单击特定链接时 会执行一些 VB 脚本并显示 ASP 页面 但我得到的屏幕显示 信息不可用 请求的 URL 被拒绝 请咨询您的管理员 您的支持 ID 是 XXXXXXXXXXXXXXXXXXXXXX IIS 和事
  • UPS 测试追踪号码(有这样的东西吗?)

    我终于让 UPS 跟踪 API 正常工作了 或者至少我认为我是这样的 它给我一个 无效的跟踪号码 响应 我现在的问题是我没有要跟踪的包裹 有谁知道有什么资源可以让我测试来自 UPS 的虚假订单 或者有什么可以给出回应的资源 谢谢 我正在使用
  • 使用 Excel VBA 创建包含具有特定值的行的 Outlook 电子邮件正文

    我使用了一个示例来创建代码 使用 按钮 在我的文件中为红色 从 Excel 使用 Outlook 发送电子邮件 该代码有效 有一个预选的行范围 B1 K20 可以手动修改 这要归功于应用程序 输入框功能 Sub MAIL Dim rng A
  • Jenkins 运行并行脚本

    我是詹金斯的新手 需要一些帮助 我有 4 个 shell 脚本 test1 sh test2 sh test3 sh 和 test4 sh 我希望 test2 sh 仅在 test1 sh 成功运行时运行 而 test4 sh 仅在 tes
  • 如何使用点符号(如方括号符号)中的变量

    我一直在 Javascript 中使用方括号表示法来创建和调用关联数组 在这个例子中 我理解方括号表示法允许您使用变量来调用数组中的某个对象 你会如何用点表示法来做这样的事情 var item item 1 pen var x 1 cons
  • 如何选择BigQuery表中最新的分区?

    我尝试从日期分区 BigQuery 表中的最新分区中选择数据 但查询仍然从整个表中读取数据 我已经尝试过 据我所知 BigQuery不支持QUALIFY SELECT col FROM table WHERE PARTITIONTIME S
  • 如何限制ListView中列表项的显示

    我从 url 获取 XML 数据并使用自定义列表适配器在ListView 我只需要显示 10 个项目ListView 我怎样才能做到这一点 请告诉我 Thanks 适配器中仅放入 10 件物品 或者覆盖getCount 并返回10
  • Camera.PictureCallback 拍照后停止预览

    使用具有 Android API 16 的设备拍照后 预览停止工作 但当我使用具有 Android API 22 的设备时 应用程序工作正常 我有这个拍照代码 private Camera PictureCallback mPicture
  • 连接sqlite中未知数量的值

    我正在使用 sqlite 3 15 1 我有一张桌子master包含大学的主时间表 看起来像 day sem sec hour sub id MON 5 B 4 10IS51 MON 5 B 4 10IS53 MON 5 B 5 10CS5
  • 更改 Three.js 对象的几何形状

    我正在尝试更改 Three js 场景中某些对象的几何形状 我有一段几乎可以工作的代码 其中鼠标单击触发了更改 但遇到了以下问题 渲染的 形状仅在第一次鼠标单击时更改 即使几何图形也发生了变化通过以下每次点击都成功修改 使用 Three j
  • 如何让 nasm 在 MacOS 终端中作为命令工作?

    我一直在尝试让 nasm 作为终端中的命令工作 但似乎没有任何效果 我只是不断收到错误 nasm error unable to find utility nasm not a developer tool or in PATH 因此 首先
  • 在javaScript中刷新页面后如何更新数据库?

    我想给用户机会更改产品的评分值 但刷新页面后不起作用 例如 当他访问一个他没有评分的新产品时 他可以在刷新页面之前一次又一次地更改评分值 但刷新页面后 他可以更改同一产品的评级值 但 ratingValue2 的警报不起作用 数据库也没有更
  • 两个 pdf 水印 - 第一个的每一页和第二个的每一页

    我有两个长度相同的 pdf 文件 比如说 pdf1 pdf 和 pdf2 pdf 我正在尝试使用 pdf2 pdf 为 pdf1 pdf 的每一页添加水印 即 pdf1 pdf 第 1 页与 pdf2 pdf 第 1 页 pdf1 pdf
  • 如何从 imblearn 中的 RandomUnderSampler 获取样本索引

    有谁知道使用 imblearn 的 RandomUnderSampler 进行欠采样后是否 如何获得所选样本的索引 曾经有一个参数 return indices True 现在在新版本中被删除 并且可能被属性 sample indices
  • 如何在未安装 Git 的情况下应用“git diff”补丁?

    我的客户如何应用由git diff没有安装git 我尝试过使用patch命令 但它总是询问要修补的文件名 git diff gt patchfile and patch p1 lt patchfile 工作 但正如许多人在评论和其他答案中注
  • 检测移动 Web 应用程序是否位于本机 Facebook 应用程序中

    有没有办法检测我们的移动 Web 应用程序是否显示在本机 Facebook iOS 应用程序的 WebView 内 或者是否独立运行 据我们了解 我们不允许从他们的框架内获取 Facebook 积分 但我们are允许从我们自己的独立 Web
  • VBA宏使用单元格路径保存Excel文件

    我正在尝试使用硬线和单元格值的组合来保存文件以确定文件路径 In cell A29 我有一个输出这个的公式 2014 1月 高额现金 1 7 14 我得到一个预期 声明结束 error 代码是 ActiveWorkbook SaveAs F
  • 正则表达式替换%variables%

    我已经用了 30 分钟的时间来拔一撮头发了 我有一本字典 像这样 search replace foo bar 还有一个像这样的字符串 Foo bar foo search 我想用字典中的等效文本替换每个变量 Foo bar bar rep
  • Gradle:如何在控制台上打印依赖项工件 URL

    我们从maven转移到gradle 在maven中 使用build命令 我们可以清楚地看到从中获取依赖项的nexus URL 使用 gradle 我如何在项目构建时查看依赖项 URL 是否有任何命令行选项可以在 gradle 中执行此操作
  • 如何在 Laravel 队列中使用模型

    我正在尝试将邮件列表从 CSV 导入到我的数据库中 我的 Laravel 中有两个模型负责执行此操作 Target and Mailing one Target有很多Mailings 我正在使用带有 Beanstalkd 的队列系统 我在用