README.md 2.66 KB
Newer Older
1 2 3 4 5 6 7
PACMAN 2018
===========

## Parcours Web Développeur

Code pas-à-pas vu au cours

8 9
## Projet Symfony

Mat's avatar
Mat committed
10 11
* Créé le 24 Avril 2018, à 13:27
* D'après les notes de Mathieu, email: [ mat AT collectifs DOT net ]
12 13 14 15 16 17 18 19

## Checklist de Julien pour créer un nouveau projet

#### Checklist

1. Un nom de project CORRECT (qui a du sens):  ProjetX
2. Le nom de la DB (pas 'symfony') ProjetX
3. Ouvrir LE projet (pas le parent)
Mat's avatar
Mat committed
20 21 22
    * **PHPstorm: PREMIER REFLEXE**
    * Settings ⇒ Language & Frameworks ⇒ PHP ⇒ Symfony ⇒ Enable APPLYYYYYYYYYYYYYYYYY
    * Si le plugin Symfony n'est pas installé ⇒ Plugins ⇒ Browse repositories ⇒ Symfony plugin + PHP
Mat's avatar
Mat committed
23
annotation + PHP toolbox
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
4. Nettoyage
    * supprimer le répertoire AppBundle
    	* editer composer.json
    	* editer app/config/routing.yml
    	* editer app/AppKernel.php
    	* editer app/config/services.yml (commenter)
    * delete tests
    * supprimer  app/Resources/views/default
5. Nettoyer le template de base
	* app/Resources/views/base.html.twig ⇒  Propre
6. Autoloader composer.phar
	* php composer.phar dump-autoload
7. Créer la database
	* php bin/console doctrine:database:create
8. PHPstorm: Settings ⇒ Command line tool support (APPLYYYYYYYY)
Mat's avatar
Mat committed
39
9. GIT: dans .gitignore ⇒  ajouter /.idea/ (exclusion)
40 41 42
10. Générer le bundle
	* php bin/console doctrine:generate:bundle
11. Editer composer.json
Mat's avatar
Mat committed
43 44
    * ajouter:  "Namespace\\" : "src/Bundle"
    * PHP Fatal error:  Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "VincentBundle" from namespace "VincentBundle". Did you forget a "use" statement for another namespace? in C:\xampp\htdocs\Symfony\VincentClean\app\AppKernel.php:19
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
12. Autoloader composer.phar
	* php composer.phar dump-autoload
13. CLEAN UP
14. tests
	* TESTER L'APPLI EN CHANGEANT LE TEMPLATE
15. supprimer DefaultController
16. supprimer Resources/views/Default
17. app/config/routing.yml, définir le préfixe
	* path:  /xx


#### Plus

* LORS DE LA SUPPRESSION D'UNE ENTITE, ENLEVER AUSSI LE REPOSITORY
* REGLES:
	* Controlleur:
		* extends MasterController (Controlleur custom)
		* methodAction
		* return RESPONSE
		* RESPONSE ET REQUEST NAMESPACE ⇒ HttpFoundation
	* Form:
		* Dossier Form
Mat's avatar
Mat committed
67 68
		* FormType
			* extends AbstractType
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
			* configureOptions
			* getBlockPrefix
			* buildForm
	* Routing:
		* nom de route: bundle_controlleur_action_advanced
		* methods: [ GET, POST, DELETE]
		* si {} ⇒ requirements (RegEx)
	* Views:
		* ::base.html.twig
		* @Vincent/layout.html.twig
		* @Vincent/Controlleur/action.html.twig
* Everything is OK! Now get to work :).

#### Encore plus

* PHPstorm, templates et snippets :
* Settings ⇒ Editor ⇒ File and Code Templates & Live templates