获取存储库时,在null上调用成员函数findOneByName()

时间:2019-05-06 07:47:13

标签: php symfony doctrine

我有一种将统计信息发送给一群人的方法。

public function sendNewsletterStatistics ()
{
    $snapshotName = $this->getSnapshotName($this->period);

    $snapshotRepo = $this->entityManager->getRepository(NewslettersStatisticSnapshot::class);
    $snapshot = $snapshotRepo->findOneByName($snapshotName);

...

我的问题是,当我运行该方法时,我得到以下输出:

  

错误:在null上调用成员函数findOneByName()   /usr/src/app/src/AppBundle/Service/NewsletterStatisticsService.php:53

我已验证我的NewslettersStatisticSnapshot类是否存在,并且已经检查我是否具有导入该类所需的正确的use语句。

我在这里做什么错了?

===

编辑:这是我实体顶部的内容。

/**
 * NewslettersStatisticSnapshot
 *
 * @ORM\Table(name="newsletters_statistics_snapshot")
 * @ORM\Entity(repositoryClass="AppBundle\Entity\Repository\NewslettersStatisticSnapshotRepository")
 */
class NewslettersStatisticSnapshot
{
...

1 个答案:

答案 0 :(得分:1)

$ this-> entityManager您的变量entityManager未定义。

您可以: 公共函数sendNewsletterStatistics(EntityManagerInterface $ entityManager)

$ this-> entityManager => $ entityManager