(Se questo non è il posto giusto per pubblicare questo tipo di domanda Sarei felice di inviare da qualche altra parte)Symfony2 e singole applicazioni pagina web utilizzando un framework come AngularJS
Sto cercando di costruire un sistema interattivo applicazione web per gestire le risorse aziendali. Ho esperienza con Symfony2 ma mi piace colpire un muro con questa nuova applicazione.
Mi piacerebbe rendere questa applicazione abbastanza interattiva sul lato client. Quasi una singola pagina web completa. Le mie precedenti applicazioni web normalmente usavano solo un tipico pattern MVC con pagine CRUD.
In quei semplici applicazioni avrei
/employees/
/employees/create
/employees/detail/45
/employees/update/45
/employees/delete/45
Utilizzando symfony in questo tipo di applicazione mi avrebbe dato un sacco di vantaggi:
- Routing
- Security (CSRF gettoni)
- FormTypes e gestione moduli
- convalida
- Integrazione con Doctrine
- Ramoscello
Soprattutto funzionalità simile in Twig è molto rinfrescante (dato che i miei modelli sono stati costruire come entità Doctrine):
<p>{{ employee.getCurrentTask().description }}</p>
Il problema che Ora sto affrontando il fatto che mi sembra che Symfony2 non sia realmente costruito per le singole applicazioni di pagine web. Non appena cerco di aggiungere alcune funzionalità Ajax sono di fronte a questi problemi:
- CSRF token non valida
- Troppa logica di presentazione non riutilizzabile vista/in jQuery
- Aggiunta di data-attributi html per ottenere id ecc.
Ho quindi esaminato Knockout.js e Angularjs ma poi mi sento di perdere tutti i vantaggi di Doctrine e Twig. Devo ricostruire comunque i miei modelli dal lato client e devo mantenerli in due luoghi diversi allora.
Così mi è venuta questa idea: (? FOSRestBundle forse)
- modelli Usa Symfony2 e controllori a persistere i dati nel database, ma lasciare che i controller in symfony spedice appena JSON e ricevere JSON
- Usa un framework come AngularJS o KnockoutJS per ricostruire i dati JSON sul lato client per utilizzare il binding a 2 vie.
Ma allora come dovrei affrontare le questioni come Doctrine2 relazioni, Form Validation, CSRF che Symfony già risolto ma sono inutilizzabili se io uso un frontend quadro js?
Tutti i suggerimenti sono benvenuti!
Voglio solo condividere che è ancora possibile utilizzare FormType bene senza alcun problema. Quando si ricevono dati dalla richiesta REST, è possibile analizzarli e agire come qualsiasi altro modulo di invio. – mr1031011