如何使方法中的参数有效?

在我的实体中的一个方法中,我使用了一个参数“addlinkedDocuments”。


class Documents {

  /**

  * Many Documents link to many Documents.

  * @ORM\ManyToMany(targetEntity="App\Entity\Documents", fetch="EAGER")

  * @ORM\JoinTable(name="documents_documents",

  *      joinColumns={@JoinColumn(name="link_origin", referencedColumnName="id")},

  *      inverseJoinColumns={@JoinColumn(name="link_destination", referencedColumnName="id")}

  *      )

  * @Groups("documents")

  */

  private $linkedDocuments;



  public function __construct() {

    $this->linkedDocuments = new ArrayCollection();

  }




  /**

  * @return Collection|linkedDocuments[]

  */

  public function getlinkedDocuments(): Collection

  {

    return $this->linkedDocuments;

  }


  public function addlinkedDocuments(linkedDocuments $linkedDocuments): self

  {

    if (!$this->linkedDocuments->contains($linkedDocuments)) {

      $this->linkedDocuments[] = $linkedDocuments;

    }


    return $this;

  }


  public function removelinkedDocuments(linkedDocuments $linkedDocuments): self

  {

    if ($this->linkedDocuments->contains($linkedDocuments)) {

      $this->linkedDocuments->removeElement($linkedDocuments);

    }


    return $this;

  }

但我收到错误消息:


类“App\Entity\Documents”中方法“addlinkedDocuments”中参数“linkedDocuments”的类型提示无效。


慕田峪9158850
浏览 112回答 1
1回答

慕码人8056858

据我所知,在Documents.因此,任何给定的文档都可以与许多其他文档相关。linkedDocuments只是保存 的集合的变量的名称Documents。我的观点是链接的文档不是类型linkedDocumentsbut Documents,所以你的类型提示应该相应地改变:/** * @return Collection|Document[] */ public function getlinkedDocuments(): Collection {     return $this->linkedDocuments; } public function addlinkedDocument(Document $linkedDocument): self {     if (!$this->linkedDocuments->contains($linkedDocument)) {         $this->linkedDocuments[] = $linkedDocument;     }      return $this; } public function removelinkedDocument(Document $linkedDocument): self {     if ($this->linkedDocuments->contains($linkedDocument)) {         $this->linkedDocuments->removeElement($linkedDocument);     }     return $this; }编辑:根据 Cerad 的建议,我已经去重命名方法以更好地反映多元化。所以你的类应该被调用,Document以便任何一个给定的文档都可以链接到许多文档。
打开App,查看更多内容
随时随地看视频慕课网APP