Archive for the ‘tips’ Category

Usare Symfony2 con subversion

Edit: questo post è stato superato dalla pubblicazione di questa guida. Viene lasciato sul blog per motivi storici, ma si consiglia di seguire quanto spiegato nella guida suddetta. Sappiamo che Symfony2 predilige l’utilizzo di git come sistema di versionamento. Tuttavia, potrebbero esserci tutta una serie di ragioni per cui un progetto abbia bisogno di subversion: [...]

Richiamare il “nonno” di una classe

Capita spesso in symfony, in cui l’ereditarietà è usata pesantemente, di dover sovrascrivere un metodo. A volte purtroppo questo metodo è a sua volta un override di un metodo della propria classe padre, come nel seguente esempio: 1 2 3 4 5 6 // funzione originale public function pippo() { parent:pippo() // ecc. ecc. } [...]

task con progress bar

A volte può capitare di dover eseguire dei task che durano diversi minuti, per esempio per delle importazioni o per delle conversioni di grandi quantità di dati. In questi casi può essere molto utile avere nel terminale una barra di progressione, che indichi le quantità dei dati già lavorati e ancora da lavorare. Questa piccola [...]

Basic authentication

Può capitare di avere un progetto in symfony che non prevede utenti, ma che ha comunque un’interfaccia di amministrazione. In questo caso, vale la pena installare sfGuardPlugin solo per far accedere un singolo utente? Ovviamente no. Vediamo allora come risolvere il problema in modo semplice ed elegante. Supponiamo di trovarci in una configurazione standard, con [...]

Testare più email contemporaneamente

Può capitare di inviare dalla stessa action diverse email, ad esempio per notificare un amministratore di un determinato evento e contemporaneamente per dare feedback all’utente che l’ha scatenato. In questi casi sfTesterMailer, che con il metodo withMessage(), ci viene incontro dandoci la possibilità di filtrare, filtrando per destinatario, l’email che vogliamo testare. Supponiamo ad esempio [...]

Deselezionare le opzioni di una select multipla in un test funzionale

Mi è capitato questa mattina di dover fare un test funzionale in cui avevo bisogno di deselezionare una serie di opzioni da una select (all’interno di una form) lasciandone però alcuni selezionati. Guardando sulla documentazione dell’sfTestBrowser ho trovato un metodo per il select e deselect di radiobutton o checkbox. Sfortunatamente non ho trovato un metodo [...]

group by

Quante volte vi è capitato di dover fare una semplice group by per contare le righe di una tabella raggruppate per una data colonna? Per intenderci, quello che si fa in maniera semplicissima in SQL con SELECT TYPE,COUNT(*) AS num FROM card GROUP BY TYPE; Purtroppo con Propel la cosa non appare subito immediata. Ecco [...]

personalizzare i filtri nel backend

La generazione automatica dei moduli di backend è bellissima, ma a volte c’è da sistemare qualche dettaglio a mano. Un caso esemplare è la form dei filtri, che purtroppo resta in inglese anche se la localizzazione è stata abilitata. Ma con qualche riga aggiuntiva nella classe filter relativa, possiamo metterla facilmente in Italiano (o anche [...]

Sostituire l’helper “input_date_tag()” in Symfony 1.1

Come molti di voi avranno appreso, a partire da symfony 1.1 gli helper javascript (e relativi ai form) sono (imho giustamente) da considerarsi deprecati. Questo perché rendono la scrittura (ma anche l’utilizzo) del codice più complesso del dovuto stravolgendo (e forzando) logiche non sempre corrette. Tale scelta ha però portato ad alcune mancanze, prima tra [...]

Editare HTML in una textarea

Spesso può servire, specialmente se si sta scrivendo un CMS, utilizzare una textarea per l’editing del codice HTML. Purtroppo symfony, a ogni submit di un form, converte il contenuto della textarea stessa trasformando le entità HTML nei rispettivi simboli (c’è anche un ticket aperto a riguardo). Questo fastidioso comportamento fa sì che le pagine HTML [...]