Php 扩展类函数必须实现接口
我有classPhp 扩展类函数必须实现接口,php,symfony,Php,Symfony,我有classArticle,它扩展了bundle classArticle 类文章扩展了BaseArticle BaseArticle具有方法getImages /** * {@inheritdoc} */ public function getImages(): Collection { return $this->images; } 问题是当调用此方法时,我得到以下错误: Odiseo\BlogBundle\Model\Article::getImages()的返回值必
Article
,它扩展了bundle classArticle
类文章扩展了BaseArticle
BaseArticle
具有方法getImages
/**
* {@inheritdoc}
*/
public function getImages(): Collection
{
return $this->images;
}
问题是当调用此方法时,我得到以下错误:
Odiseo\BlogBundle\Model\Article::getImages()的返回值必须实现接口原则\Common\Collections\Collection,返回空值
我真的不知道如何才能得到null
,因为这只发生在管理面板中,在公共文章页面中效果很好。扩展实体会有问题吗 在某处,线
$this->images = new ArrayCollection();
缺少或被阻止(请注意,您需要为此使用子句:use-Doctrine\Common\Collections\ArrayCollection;
)
我在这里看到两个可能的原因:
BaseArticle
(因此,捆绑包中的文章
)的\u构造()中没有前面提到的行
BaseArticle
有那一行,但是您的文章的构造函数重写(不调用父构造函数)并因此阻止它,并且应该调用父构造函数或拥有那一行本身
null
,因为属性没有正确初始化(正确初始化将是顶部的行),这显然没有实现集合
接口,因此会出现错误消息
或者,有人正在将images
属性设置为null
什么是“管理面板”?