2

在我的域模型中,有一个属性monthObjectStorageforbill元素。以下是域模型的外观:

    /**
     * establishment
     *
     * @var ObjectStorage<Bill>
     * @TYPO3\CMS\Extbase\Annotation\ORM\Cascade("remove")
     */
    protected ObjectStorage $month;

    public function __construct()
    {
        $this->setMonth(new ObjectStorage());
    }

这是二传手:

    /**
     * month setter
     *
     * @param ObjectStorage<Bill> $month
     * @return void
     */
    public function setMonth(ObjectStorage $month) : void
    {
        $this->month = $month;
    }

可悲的是phpstan显示以下错误:

参数 #1 $ 方法 VIC\Ext\Domain\Model\StorageRoom::setMonth() 的建立需要 iterable&TYPO3\CMS\Extbase\Persistence\ObjectStorage,
TYPO3\CMS\Extbase\Persistence\ObjectStorage。

任何想法有什么问题?

4

1 回答 1

0

如何为 phpstan 构建构造:

/**
     * 成立
     *
     * @var ObjectStorage<账单>
     * @TYPO3\CMS\Extbase\Annotation\ORM\Cascade("删除")
     */
    受保护的$月;

    公共函数 __construct()
    {
        /** @var ObjectStorage<Bill> $objectStorageBill */
        $objectStorageBill = 新的 ObjectStorage();
        $this->setMonth($objectStorageBill);
    }

于 2021-03-10T15:58:56.827 回答