0

我正在使用带有 armetiz/LeezyPeanstalkBundle 的 symfony3。我想执行一个从给定名称创建表的工作。如果我从控制台 bin/console create:table test_table 运行,我已经创建了带有参数名称的 symfony 命令 create:table 来创建表。现在我想在我的事件启动时使用 phenastalk 来完成这项工作。该事件工作正常,即使数据发送到管,但命令不执行。问题是什么?

这是数据:

$payload = ["name"  => $power_plant->getName()];
$jobData = ["command" => "create:table", "meta"  => $payload];

我设置了管名

$this->pheanstalk->useTube($this->tubeName);

我将有效载荷放入管中:

$this->pheanstalk->put(json_encode($jobData));
$this->pheanstalk->watch($this->tubeName)->ignore('default')->reserve();

这是我在试管中看到的数据:

{
   "command":"create:table",
   "meta":{
       "name":"abc123"
   }

但是没有创建表,但是如果我从控制台运行命令,则会创建表,所以命令是可以的。我认为是 pheanstalk 工人有问题吗?

4

0 回答 0