Bonsoir,

 Fatal error: Class 'Collectify\Model\Category' not found in

J'ai ce probleme je sais pas pourquoi, voici mon code, fichier "app.php" :

<?php
require_once __DIR__. '/../core/bootstrap.php';

var_dump(new \Collectify\Model\Category());
?>

Fichier bootstrap.php

<?php

require_once __DIR__. '/config.inc.php';
require_once __DIR__. '/../vendor/autoload.php';

use RedBeanPHP\Facade as R;

if(empty(R::$currentDB))
{
    $dsn = sprintf('%s:host=%s; dbname=%s', DB_TYPE, DB_HOST, DB_NAME);
    R::setup($dsn, DB_USER, DB_PASSWORD);
}
R::close();
?>

Fichier {Project_name}/src/Collectify/Model/Category.php:

<?php

namespace Collectify\Model;

class Category extends \RedBean_SimpleModel
{
    public $name;
    protected $slug;
}

Si quelqu'un pourrait m'aider ça serait vraiment magnifique :) car je bloque dessus depuis 2h30 :/

4 réponses


PhiSyX
Réponse acceptée

Yop. As-tu (crée) un "autoloader"?
Si non, bah c'est normal puisque tu n'as pas require le fichier {Project_name}/src/Collectify/Model/Category.php.

Si tu utilises composer, tu peux ajouter ceci à ton composer.json:

"autoload": {
    "psr-4": {
        "Collectify\\": "./src/Collectify"
    }
}

et ensuite en ligne de commande entre composer dump-autoload et tout fonctionnera sans pb. (sans require)

Merci, le chargement de classe est bien effectué, mais j'ai un autre soucis maintenant (hahaha :p )

Fatal error: Class 'RedBean_SimpleModel' not found

Aurais-tu une idée ? ^^'

Peut-être que RedBean_SimpleModel est dans un espace de nom particulier. Tu dois peut-être utiliser use <namespace>\RedBean_SimpleModel. à voir dans leurs doc ;-D

Justement, c'est ce que j'essaie de regarder dans la doc .. Mais elle est vraaaaiment mal faîte .. :/ j'essaie de regarder des vidéos sur YouTube de démo mais bon .. Elles datent un peu et je ne trouve pas quelqu'un qui crée une fonction :\