2011-10-27 8 views
8

Ho ottenuto 2 entità collegate da una relazione "OneToMany". Una delle entità è l'oggetto City. La tabella corrispondente a questo oggetto include quasi 37000 voci. Quando procedo alla creazione di un modulo per popolare l'entità Proprietaria in Symfony, utilizzo un FormType che appare come sotto. Comprende un campo corrispondente all'oggetto CityjQuery Campo di completamento automatico in Symfony2 con formType e Doctrine2

namespace Immo\BienBundle\Form; 
use Symfony\Component\Form\AbstractType; 
use Symfony\Component\Form\FormBuilder; 

class ProprietaireType extends AbstractType { 
    public function buildForm(FormBuilder $builder, array $options) { 
     $builder 
     ->add('nom') 
     ->add('prenom') 
     ->add('email') 
     ->add('telephone') 
     ->add('adresse') 
     ->add('city', 'entity', array(
      'class'=>'Immo\BienBundle\Entity\City', 
      'property'=>'city')); 
    } 

    public function getName() { 
     return 'immo_bienbundle_proprietairetype'; 
    } 
} 

Il modulo esegue il rendering di una casella combinata. popolato dalle 36000 città e impiega un tempo incredibilmente lungo per essere caricato. Ho provato l'opzione fetch = "extra_lazy", ma non è ancora abbastanza efficiente. La mia idea era di creare un modulo con un campo di input che funzionasse con ajax e che visualizzasse l'elenco delle città dopo che l'utente ha fornito 2 lettere. Gradirei qualsiasi aiuto da parte della comunità per creare la relazione necessaria con il mio oggetto durante la convalida.

risposta

Problemi correlati