Професионална програма
Loading...
slaky avatar slaky 0 Точки

PHP: Blog Advanced Functionality - Cannot create article and could not open home page

Здравейте. Имам два проблема с PHP-то от упражнението във вторник. Единият е като се опитам да стартирам началната страница на блога, където трябва да показва категориите и дава
"An exception has been thrown during the rendering of a template ("Notice: Undefined index: targetToSourceKeyColumns") in blog\index.html.twig at line 11."

Другия проблем е когато създавам статия. Попълвам всичко, с категории и тагове и дава следния проблем:
"Type error: Argument 1 passed to Doctrine\Common\Collections\ArrayCollection::__construct() must be of the type array, object given, called in C:\Users\slaky\Desktop\Software Technologies\PHP\Skelet\Blog\vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php on line 605"

Кодовете съм ги прегледал няколко пъти като направих всички стъпки наново и пак ми дават тези проблеми, ако някой има някакви идеи, ще се радвам да ги споделите.

Тагове:
0
Fundamentals Module
puffed avatar puffed 289 Точки
Best Answer

Здравей, дай кода на двете entity-та Article i Category, има проблем с връзката в базата, както cheresharov е писал.

0
slaky avatar slaky 0 Точки

Малко по-нагоре съм споделил от Category Entity, а това е от Article Entity:
 

/**
 * @var Category
 *
 * @ORM\ManyToMany(targetEntity="SoftUniBlogBundle\Entity\Category", inversedBy="articles")
 * @ORM\JoinColumn(name="category_id", referencedColumnName="id")
 */
private $category;

/**
 * @return Category
 */
public function getCategory()
{
    return $this->category;
}
0
puffed avatar puffed 289 Точки

Връзката в Article entity-то не е вярна: вместо 

@ORM\ManyToMany

трябва да е

@ORM\ManyToOne
0
slaky avatar slaky 0 Точки

Това е, много благодаря !!!! Цял ден си блъскам главата с това PHP :(

0
cheresharov avatar cheresharov 42 Точки

От архива дето прати видях, че в User entity зa $articles ти липсва анотацията, което също ще доведе до проблеми в някой момент

 

трябва да е

/**
 * @var ArrayCollection
 *
 * @ORM\OneToMany(targetEntity="SoftUniBlogBundle\Entity\Article", mappedBy="author")
 */
private $articles;

0