[RESOLU] question symfony

dooki
Invité n'ayant pas de compte PHPfrance

11 févr. 2020, 13:59

Bonjour !!
J'aimerais me lancer dans un projet avec symfony, ayant demander plusieurs fois de l'aide et des conseils sur ce forum et ayant toujours eu de bons retours, je vous sollicite pour mes questions !

J'aimerais savoir si déjà, peut on utiliser symfony avec des vraies données (pas que des fictives/fixtures), si oui comment faire le lien avec la bdd ? ((en ayant déjà renseigner dans le .env la connexion à la bdd))

Pour créer une app simple, faut t'il créer un projet website-skeleton ? ou un autre suffirait ?

Du code php, java peut il etre utiliser avec des balises , c'est utilise sachant que le twig utilise ses propres balises ?

Si vous avez quelques conseils, astuces ou autres je suis preneur !

Mammouth du PHP | 568 Messages

11 févr. 2020, 16:18

bonjour,
J'aimerais savoir si déjà, peut on utiliser symfony avec des vraies données (pas que des fictives/fixtures), si oui comment faire le lien avec la bdd ? ((en ayant déjà renseigner dans le .env la connexion à la bdd))
Pour injecter les vraies données dans une application:
- on peut se servir des formulaires . Sachant que SF est capable de générer du CRUD correspondant à une entité doctrine.
- on peut également importer des données en SQL en utilisant la commande doctrine suivante:

Code : Tout sélectionner

php bin/console doctrine:database:import donnees.sql
où le fichier donnees.sql contient des instructions SQL d'ajout de données.ces instructions sont INSERT INTO MA_TABLE VALUES(...)
Pour créer une app simple, faut t'il créer un projet website-skeleton ? ou un autre suffirait ?
website-skeleton forunit toutes les dépendances nécessaires pour créer une application Web en Symfony. Ces dépendances comprennent: symfony/form (pour les formulaire ), doctrine, twig, symfony/validator, symfony/security,...

Alors que l'option skeleton fournit le minimum syndical qu'il faut pour créer une application(web, api, console).le skeleton fournit juste une abstraction de l'objet Request nécessaire pour manipuler les requêtes HTTP.le skeleton n'est qu'un mini-framework. Avec skeleton tu peux ajouter les dépendances en fonction de ton besoin par exemple ajouter twig si t'en a besoin.
Du code php, java peut il etre utiliser avec des balises , c'est utilise sachant que le twig utilise ses propres balises ?
On peut ajouter du code JavaScript dans une vue twig mais on ne peut pas ajouter du code PHP. Pour ajouter du code PHP dans twig on créé une extension twig(on greffe une fonction à twig).

Le mieux avant de se lancer dans un framework c'est de le comparer avec autre(Laravel par exemple) en réalisant un mini projet. Laravel a l'avantage d'être plus facile par rapport à SF.

dooki
Invité n'ayant pas de compte PHPfrance

11 févr. 2020, 16:46

Je ne sais pas quoi répondre à part merci .. !!
Le mieux avant de se lancer dans un framework c'est de le comparer avec autre(Laravel par exemple) en réalisant un mini projet. Laravel a l'avantage d'être plus facile par rapport à SF.
J'ai entendu plus de bien de symfony, je me lance dedans un peu tête baissée ducoup, mais il faut avouer que c'est difficile de comparer des frameworks quand on n'en connait aucun ..

dooki
Invité n'ayant pas de compte PHPfrance

11 févr. 2020, 17:25

En espérant que tu sois encore dans les parages ,

Code : Tout sélectionner

php bin/console doctrine:database:import donnees.sql
J'ai utilisé cette requète qui a fonctionner ,
ducoup symfony a créer un fichier contenant les requètes quelque part ou bien
c'est gérer avec doctrine ?
Comment faire pour avoir accés à ces données sachant que la console m'a retourné :
Processing file 'C:\Users\dooki\Desktop\symfony\MonSite\lignes.sql'... OK!

Mammouth du PHP | 568 Messages

11 févr. 2020, 21:36

ducoup symfony a créer un fichier contenant les requètes quelque part ou bien
c'est gérer avec doctrine ?
non symfony ne crée pas un fichier contenant des requêtes.simplement la commande précédente permet de charger les données dans des tables de la BD préalablement créées par tes soins via doctrine. Ce genre de commande sert souvent à charger des données figées qui ne changent quasiment pas au cours de la vie l'application par exemple charger les informations sur les communes, les départements, les régions.
J'ai par exemple un jeu de données dans le fichier data.sql à la racine de mon projet:

Code : Tout sélectionner

# data.sql TRUNCATE TABLE `category`; INSERT INTO `category` VALUES (202, 'Voyage'), (203, 'Nature'), (204, 'Sports'), (205, 'Informatique') ;
en lançant la commande suivante les données seront chargées dans la table category(id,name)

Code : Tout sélectionner

php bin/console doctrine:database:import data.sql
En général on passe par les formulaires pour insérer les données.
Comment faire pour avoir accés à ces données sachant que la console m'a retourné
pour avoir accès à ces données tu te connecte sur ton serveur de base données(mysql) soit l'aide de la console soit à l'aide de phpmyadmin.

dooki
Invité n'ayant pas de compte PHPfrance

11 févr. 2020, 23:28

Excuse moi de te re déranger mais je me suis mal exprimer,

Comment faire pour utiliser ces données sachant qu'elles ne sont dans aucuns fichier

de la table category,

Code : Tout sélectionner

INSERT INTO `category` VALUES (202, 'Voyage'), (203, 'Nature'), (204, 'Sports'), (205, 'Informatique')
tu veux récuperer toutes les catégories, tu peux faire un foreach dans ta page d'affichage(template) mais comment lui dire ou aller chercher dans la base ? PDO ? une route vers le fichier .env avec en plus une route vers un repository qui execute une requete sql ?

Mammouth du PHP | 568 Messages

12 févr. 2020, 11:59

tu veux récuperer toutes les catégories, tu peux faire un foreach dans ta page d'affichage(template) mais comment lui dire ou aller chercher dans la base ? PDO ? une route vers le fichier .env avec en plus une route vers un repository qui execute une requete sql ?
la configuration de la BD se fait dans le fichier .env au début du projet.
Pour récupérer les données, doctrine utilise un langage d'interrogation de données(DQL), proche du SQL, qui se base les entités créées.

la documentation explique la configuration de la connexion à la BD, c'est quoi une entité doctrine, comment la synchroniser avec la BD, comment interagir sur ces entités pour afficher les données, les sauvegarder ...
https://symfony.com/doc/current/doctrin ... -doctrine

dooki
Invité n'ayant pas de compte PHPfrance

12 févr. 2020, 15:55

Merci pour tout yann18, c'est good :) !