Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/garak/garakdemobundle
https://github.com/garak/garakdemobundle
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/garak/garakdemobundle
- Owner: garak
- License: other
- Created: 2012-06-12T15:06:25.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2012-12-14T12:42:16.000Z (about 12 years ago)
- Last Synced: 2024-10-13T04:53:37.587Z (2 months ago)
- Language: PHP
- Size: 148 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
sfjqec
======(english version below)
-----------------------Questo bundle è la trasposizione in Symfony2 di un piccolo progetto, chiamato
[sfjqec](https://github.com/garak/sfjqec). È stato creato a scopo didattico, per una
presentazione tenuta inizialmente per il [PUG Roma](http://roma.grusp.org/) e poi
ampliata per il [phpDay](http://www.phpday.it/2011).
Lo scopo di questo codice è in generale mostrare come integrare correttamente
Javascript e PHP, con particolare riferimento a Symfony e jQuery.
Il progetto mostra un semplicissimo e-commerce, da cui il nome: sfjqec è formato da
sf (Symfony) + jq (jQuery) + ec (e-commerce).in breve
--------In estrema sintesi, questo progetto mostra come integrare correttamente Javascript e PHP,
usando AJAX. I passi sono i seguenti:* scrivere l'applicazione come se Javascript non esistesse
* legare alcuni eventi (tipicamente click di link e submit di form) a delle funzioni
Javascript
* ciascuna di queste funzioni Javascript richiama uno script PHP, tramite AJAX
* al successo della chiamata AJAX, richiama un'altra funzione Javascript, che si occupa
di manipolare il DOMNello specifico di jQuery e Symfony, i passi si traducono nel seguente modo:
* scrivere il controller normalmente
* scrivere un file Javascript che usi l'evento `ready()` di jQuery e che faccia il `bind`
dei click e dei submit necessari
* usare l'evento passato da `bind` nella funzione Javascript per estrarre i riferimenti
necessari dal DOM
* nel controller, effettuare le necessarie modifiche (spesso basta modificare i redirect,
in modo che NON siano effettuati per le richieste AJAX)
* nella vista, aggiungere un file del tipo `NomeAzione.json.twig`
* di nuovo nel file Javascript, scrivere la funzione che deve manipolare il DOM,
basandosi sulla variabile `result`, che a questo punto contiene un oggetto JSON, che
jQuery ricava dal codice della vista del punto precedenteA questo punto il mio consiglio è quello di analizzare i passi precedenti, tenendo
sott'occhio il codice di questo progetto, in particolare il controller e il file js.installazione
-------------Aggiungere le seguenti righe al proprio file `composer.json`:
``` json
"require": {
"garak/demo-bundle": "dev-master"
},
"repositories": [{
"type": "vcs",
"url": "http://github.com/garak/GarakDemoBundle"
}],
```Abilitare il bundle nel kernel:
``` php