Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [inny][Symfony5] Data Fixtures
Resurrection
post 25.09.2020, 20:24:21
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 23.02.2012

Ostrzeżenie: (0%)
-----


Witam,
Utworzyłem za pomocą MakerBundle klasę User którą odwzorowałem za pomocą Doctrine w bazie danych. Następnie utworzyłem fixtures. Nie zależnie od tego czy ręcznie dodam tag w services.yaml czy w klasie fixtures (UserFixtures) zaimplementuje ORMFixtureInterface otrzymuje błąd

Cytat
The autoloader expected class "App\Entity\User" to be defined in file "...". The file was found but the class was not in it, the class name or names
> loading App\DataFixtures\UserFixtures
pace probably has a typo.


Nie widzę literówki w nazwie pliku,klasy i przestrzeni nazw. Proszę o wskazówkę gdzie jest błąd.

Kod
<?php
use App\Repository\UserRepository;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface;

/**
* @ORM\Entity(repositoryClass=UserRepository::class)
*/
class User implements UserInterface
{
    /**
     * @ORM\Id
     * @ORM\GeneratedValue
     * @ORM\Column(type="integer")
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=180, unique=true)
     */
    private $email;

    /**
     * @ORM\Column(type="json")
     */
    private $roles = [];

    /**
     * @var string The hashed password
     * @ORM\Column(type="string")
     */
    private $password;

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

    public function getEmail(): ?string
    {
        return $this->email;
    }

    public function setEmail(string $email): self
    {
        $this->email = $email;

        return $this;
    }

    /**
     * A visual identifier that represents this user.
     *
     * @see UserInterface
     */
    public function getUsername(): string
    {
        return (string) $this->email;
    }

    /**
     * @see UserInterface
     */
    public function getRoles(): array
    {
        $roles = $this->roles;
        // guarantee every user at least has ROLE_USER
        $roles[] = 'ROLE_USER';

        return array_unique($roles);
    }

    public function setRoles(array $roles): self
    {
        $this->roles = $roles;

        return $this;
    }

    /**
     * @see UserInterface
     */
    public function getPassword(): string
    {
        return (string) $this->password;
    }

    public function setPassword(string $password): self
    {
        $this->password = $password;

        return $this;
    }

    /**
     * @see UserInterface
     */
    public function getSalt()
    {
        // not needed when using the "bcrypt" algorithm in security.yaml
    }

    /**
     * @see UserInterface
     */
    public function eraseCredentials()
    {
        // If you store any temporary, sensitive data on the user, clear it here
        // $this->plainPassword = null;
    }
}

Kod
<?php

namespace App\DataFixtures;

//use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Bundle\FixturesBundle\ORMFixtureInterface;
use Doctrine\Persistence\ObjectManager;
use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
use App\Entity\User;

class UserFixtures implements ORMFixtureInterface
{
    private $passwordEncoder;

    public function __construct(UserPasswordEncoderInterface $passwordEncoder)
    {
      $this->passwordEncoder = $passwordEncoder;
    }

    public function load(ObjectManager $manager)
    {
        $user = new User();
        $user->setPassword($this->passwordEncoder->encodePassword(
            $user,
            'takie sobie hasło'
        ));
        $manager->persist($user);
        $manager->flush();
    }
}


Ten post edytował Resurrection 25.09.2020, 20:25:35
Go to the top of the page
+Quote Post
ohm
post 26.09.2020, 11:52:06
Post #2





Grupa: Zarejestrowani
Postów: 618
Pomógł: 143
Dołączył: 22.12.2010

Ostrzeżenie: (0%)
-----


Nie masz namespace w klasie User smile.gif
Go to the top of the page
+Quote Post
Resurrection
post 26.09.2020, 15:20:42
Post #3





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 23.02.2012

Ostrzeżenie: (0%)
-----


Moja żona mówi od roku, że muszę już nosić okulary...czas o tym pomyśleć :-) Dziękuję
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 17:47