2011-10-27 19 views
8

मुझे 'वनटॉनी' रिश्ते से जुड़ी 2 इकाइयां मिलीं। इकाइयों में से एक वस्तु City है। इस ऑब्जेक्ट से संबंधित तालिका में लगभग 37000 प्रविष्टियां शामिल हैं। जब मैं सिम्फनी में प्रोप्रायटरी इकाई को पॉप्युलेट करने के लिए एक फॉर्म के निर्माण के लिए आगे बढ़ता हूं, तो मैं एक फॉर्मटाइप का उपयोग करता हूं जो नीचे जैसा दिखता है। इसमें सिटी ऑब्जेक्टफॉर्म टाइप और सिद्धांत 2 के साथ सिम्फनी 2 में jQuery स्वत: पूर्ण फ़ील्ड

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'; 
    } 
} 

फ़ॉर्म एक कंबोबॉक्स प्रस्तुत करता है। 36000 शहरों द्वारा आबादी और लोड करने के लिए अविश्वसनीय रूप से लंबा लगता है। मैंने fetch = "extra_lazy" विकल्प का प्रयास किया है, लेकिन यह अभी भी पर्याप्त कुशल नहीं है। मेरा विचार एजेक्स के साथ काम कर रहे इनपुट क्षेत्र के साथ एक फॉर्म बनाना था और उपयोगकर्ता 2 अक्षरों के बाद शहरों की सूची प्रदर्शित करना था। सत्यापन करते समय मैं अपने ऑब्जेक्ट के साथ आवश्यक रिश्ते बनाने के लिए समुदाय से किसी भी मदद की सराहना करता हूं।

उत्तर

संबंधित मुद्दे