Bonjour à tous,
je continu mon apprentissage de Symfony 2, j'ai globalement compris comment tout fonctionne et la je m'attaque au Model et j'ai un peu de mal.
Mon code se trouve dans le dossier "Farid" et mon bundle s'appel "TestBundle".
J'ai une base de données appelé "symfony_db" avec une table "users" qui contient 2 champs, "id" et "name".
J'ai configurer Symfony pour qu'il puisse se connecter à ma bdd, j'ai fait une requête dans mon contrôleur et j'obtiens bien le résultat dans ma vue.
Maintenant, j'aimerai bie utiliser l'ORM correctement.
1 - Pouvez-vous m'expliquer la différences entre ORM, DBAL par rapport à PDO?
app/config/config.yml :
Que faut-il que je mette dans mappings
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 # Doctrine Configuration doctrine: dbal: driver: pdo_mysql host: localhost dbname: symfony_db user: root password: null logging: %kernel.debug% orm: default_entity_manager: default entity_managers: default: mappings: TestBundle: ~
Farid/TestBundle/Entity/User.php :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <?php namespace Farid\TestBundle\Entity; class User { protected $id; protected $name; public function getId() { return $this->id; } public function setName($name) { $this->name = $name; } public function getName() { return $this->name; } }
Farid/TestBundle/TestController.php :
Que faut-il que je mette dans find?
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?php public function baseAction($id) { //$conn = $this->get('database_connection'); //$users = $conn->fetchAll('SELECT * FROM users'); $em = $this->get('doctrine.orm.entity_manager'); $user = $em->find('TestBundle:User', $id); return $this->render('TestBundle:Test:base.html.twig', array('utilisateurs' => $user)); }
Voici l'erreur que j'obtient :
Merci par avance pour votre aide.Class Farid\TestBundle\Entity\User is not a valid entity or mapped super class.
500 Internal Server Error - MappingException
Partager