Symfony 4: جرت محاولة استدعاء الوظيفة من مساحة اسم خاطئة

0

أنا جديد على symfony.

أحاول اتباع بعض البرامج التعليمية ولكنني عالق في استخدام ORM

لقد أنشأت كيانًا باستخدام الأمر التالي:

php bin/console make:entity

يحتوي الكيان الخاص بي على حقل "اسم" وبالتالي وظيفة setName ()

لقد أنشأت وحدة تحكم باستخدام الأمر:

php bin/console make:controller TestController

في وحدة التحكم هذه ، أحاول تسجيل إدخال جديد ولكن لدي هذا الخطأ الذي يظهر:

Attempted to call function "setName" from namespace "App \ Controller".

ما أفعله خطأ؟

TestController.php:

<?php

namespace App\Controller;

use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;

use App\Entity\Team;

class TestController extends Controller
{
    /**
     * @Route("/test", name="test")
     */
    public function index()
    {
        $entityManager = $this->getDoctrine()->getManager();
        $team = new Team();
        $team.setName("Marvels 6");

        $entityManager->persist($team);
        $entityManager->flush();

        return $this->json([
            'message' => 'Welcome to your new controller!',
            'path' => 'src/Controller/TestController.php',
        ]);
    }
}

Team.php:

<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity(repositoryClass="App\Repository\TeamRepository")
 */
class Team
{
    /**
     * @ORM\Id()
     * @ORM\GeneratedValue()
     * @ORM\Column(type="integer")
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=255)
     */
    private $name;

    /**
     * @ORM\ManyToOne(targetEntity="App\Entity\Poule", inversedBy="teams")
     */
    private $poule;

    public function getId()
    {
        return $this->id;
    }

    public function getName(): string
    {
        return $this->name;
    }

    public function setName(string $name): self
    {
        $this->name = $name;

        return $this;
    }

    public function getPoule(): Poule
    {
        return $this->poule;
    }

    public function setPoule(Poule $poule): self
    {
        $this->poule = $poule;

        return $this;
    }
}

1 إجابة

4
افضل جواب

هل هذه نسختك ولصقها رمز؟

$team.setName("Marvels 6");

ربما يجب أن يكون:

$team->setName("Marvels 6");
:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام