Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Fatal error: Trait 'Alura\Cursos\Helper\FlashMessageTrait' not found in

Não estoi conseguindo utilizar o método $this->difineMensagem('$tipo','$mensagem'). apresenta o erro : Fatal error: Trait 'Alura\Cursos\Helper\FlashMessageTrait' not found in C:\laragon\www\gerenciador-de-cursos\src\Controller\Persistencia.php on line 11.

<?

namespace Alura\Cursos\Helper;

trait FlashMessageTrait
{

    public function defineMensagem(string $tipo, string $mensagem): void
    {
        $_SESSION['mensagem'] = $mensagem;
        $_SESSION['tipo_mensagem'] = $tipo;
    }

}




?>

<?php

namespace Alura\Cursos\Controller;

use Alura\Cursos\Entity\Curso; use Alura\Cursos\Helper\FlashMessageTrait; use Alura\Cursos\Infra\EntityManagerCreator;

class Persistencia implements InterfaceControladorRequisicao { use FlashMessageTrait; /**

 * @var \Doctrine\ORM\EntityManagerInterface
 */
private $entityManager;

public function __construct()
{
    $this->entityManager = (new EntityManagerCreator())
        ->getEntityManager();
}

public function processaRequisicao(): void
{
    $descricao = filter_input(
        INPUT_POST,
        'descricao',
        FILTER_SANITIZE_STRING);

    //echo $descricao;
    //exit();


    $quantidade = filter_input(
        INPUT_POST,
        'descricao',
        FILTER_SANITIZE_STRING);

   /* echo $descricao;
    exit();*/

    $curso = new Curso();
    $curso->setDescricao($descricao);

    $id = filter_input(
        INPUT_GET,
        'id',
        FILTER_VALIDATE_INT);


    if (!is_null($id) && $id !== false) {

        $curso->setId($id);
        $this->entityManager->merge($curso);
        $_SESSION['tipo_mensagem'] = 'success';
        $_SESSION['mensagem'] = 'O CURSO FOI Atualizado COM SUCESSO';
    }else{
        $this->entityManager->persist($curso);
        $this->defineMensagem('success', 'O Curso '.$descricao.' FOI GRAVADO COM SUCESSO');
        /*$_SESSION['tipo_mensagem'] = 'success';
        $_SESSION['mensagem'] = 'O Curso '.$descricao.' FOI GRAVADO COM SUCESSO';*/


    }

    $this->entityManager->flush();         



    header('Location: /listar-cursos', true, 302);
}

}

1 resposta
solução!

Boa tarde, Rafael! Como vai?

Vi que vc duplicou o tópico. Então para organizar melhor o fórum e centralizar a participação do pessoal apenas em um só lugar, irei fechar esse tópico e deixar apenas o outro aberto.

Link do tópico original: https://cursos.alura.com.br/forum/topico-fatal-error-trait-alura-cursos-helper-flashmessagetrait-not-found-in-97046

Grande abraço e bons estudos, meu aluno!