Je vais au guide de démarrage de Doctrine et je suis bloqué au début à cause de "Produit de classe" introuvable dans /var/www/test/product-create.php sur la ligne 6 " :Doctrine Entity "Classe non trouvée"
<?php
require_once 'bootstrap.php';
$newProductName = $argv[1];
>>>>> $product = new Product();
$product->setName($newProductName);
$entityManager->persist($product);
$entityManager->flush();
echo sprintf('Created Product with ID %d' . PHP_EOL, $product->getId());
Comme écrit dans le guide, j'ai la classe produit sous répertoire « ./src » dans mon projet. S'il vous plaît, aidez-moi, parce que je veux commencer à utiliser Doctrine sans Symfony et je ne peux pas aller plus loin.
Voici mon bootstrap.php:
<?php
use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;
use Symfony\Component\Yaml\Parser;
require 'vendor/autoload.php';
$yaml = new Parser();
$parameters = $yaml->parse(file_get_contents(__DIR__ . '/parameters.yml'));
$parameters = $parameters['parameters'];
$config = Setup::createAnnotationMetadataConfiguration(array(__DIR__ . '/src'), $parameters['debug']);
$conn = array
(
'host' => $parameters['database_host'],
'port' => $parameters['database_port'],
'driver' => $parameters['database_driver'],
'user' => $parameters['database_user'],
'password' => $parameters['database_password'],
'dbname' => $parameters['database_name']
);
$entityManager = EntityManager::create($conn, $config);
Et ceci est mon product.php:
<?php
/**
* @Entity
* @Table (name="products")
**/
class Product
{
/**
* @Id
* @Column(type="integer") @GeneratedValue
**/
protected $id;
/**
* @Column(type="string")
**/
protected $name;
public function getId()
{
return $this->id;
}
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
}
Merci à tous à l'avance!
Serge, tu as parfaitement raison! Mais je ne comprends pas, pourquoi les mainteneurs de Doctrine ne l'ont pas inclus dans leur documentation? Merci pour l'indice! –