Generazione URL Symfony sfFormExtraPlugin autocompletamento
-
22-09-2019 - |
Domanda
Autocompleter ha un'opzione richiesta - url. Il problema è, è usato in Form.class dove né url_for (), né $ this-> getController () -> genUrl () funziona. Tutti gli esempi che ho visto l'uso URL, stringa letterale, cioè.
$options = array('Model' => 'Model', 'url' => '/path');
Forse sto diventando qualcosa di sbagliato, ma credo che scrivere gli URL come stringa non è una buona pratica. In ogni caso le pratiche a parte, non riesco a farlo funzionare sia a causa di utilizzare frontend_dev.php, voglio dire, che cosa, dovrei cambiare manualmente ogni Ajax URL dopo lo sviluppo è finito? Non può essere così.
Che cosa mi manca?
Soluzione
È necessario per generare l'URL dall'esterno la forma (la maggior parte del tempo, la vostra azione) e passarlo come opzione per il modulo:
$url = $this->generateUrl('my_route');
$this->form = new MyForm($object, array('url' => $url));
Poi vi si accede all'interno del vostro modulo utilizzando il metodo getOption
:
$this->getOption('url');
Altri suggerimenti
Ho questo problema con AJAX troppo.
Il mio attuale metodo è quello di garantire index.php lavora nell'ambiente dev -. Ho alterare il front controller per rilevare ambiente basato su URL, piuttosto che passare come una stringa