2012-10-10 6 views
5

मैं VichUploaderBundle का उपयोग अपने मीडिया फ़ाइलों को अपलोड करने के लिए और मैं AvalancheImagineBundle उपयोग करने के लिए मेरे टेम्पलेट में अंगूठे बनाना चाहते हैं। यह कैसे किया जाना चाहिए?VichUploaderBundle और AvalancheImagineBundle

मैं अब इस अधिकार है:

<td><img src="{{ vich_uploader_asset(entity, 'image') | apply_filter('my_thumb')}}" alt="{{ entity.nombre }}" /></td> 

लेकिन उत्पादन होता है:

<img src="/app_dev.php/media/cache/my_thumb/images/uploads/392158_10150441208223772_580903771_8591661_774015725_n.jpg" alt="Froga"/> 

यह मेरा config.yml है:

# Vich Uploader 
vich_uploader: 
    db_driver: orm 
    twig: true 
    gaufrette: false # set to true to enable gaufrette support 
    storage: vich_uploader.storage.file_system 
    mappings: 
     uploads: 
      uri_prefix: /images/uploads 
      upload_destination: %kernel.root_dir%/../web/images/uploads 
      namer: ~ # specify a file namer service id for this entity, null default 
      directory_namer: ~ # specify a directory namer service id for this entity, null default 
      delete_on_remove: true # determines whether to delete file upon removal of entity 
      inject_on_load: true # determines whether to inject a File instance upon load 

avalanche_imagine: 
    source_root: %kernel.root_dir%/../web/images/uploads 
    web_root:  %kernel.root_dir%/../web/images/uploads 
    cache_prefix: media/cache 
    driver:  gd 
    filters: 
     my_thumb: 
      type: thumbnail 
      options: { size: [120, 90], mode: outbound, quality: 100, format: png } 

कोई मदद या सुराग?

उत्तर

2

यदि आपकी समस्या यह है कि कोई छवि प्रदर्शित नहीं की जा रही है, तो मेरे पास एक ही समस्या थी।

यह हल करने के लिए मुझे लगता है कि मेरी config.yml भीतर, avalanche_imagine की source_root और web_root विकल्पों %kernel.root_dir%/../web (या अपने वेब रूट) के लिए स्थापित किए गए थे सुनिश्चित किया। यहाँ मेरी config.yml से प्रासंगिक स्निपेट है:

#Uploads 
knp_gaufrette: 
    adapters: 
     article_adapter: 
      local: 
       directory: %kernel.root_dir%/../web/images/articles 
    filesystems: 
     article_image_fs: 
      adapter: article_adapter 
vich_uploader: 
    db_driver: orm 
    gaufrette: true 
    storage: vich_uploader.storage.gaufrette 
    mappings: 
     article_image: 
      uri_prefix: /images/articles 
      upload_destination: article_image_fs 
      namer: vich_uploader.namer_uniqid 

#images 
avalanche_imagine: 
    filters: 
     article_list: 
      type: thumbnail 
      options: { size: [100, 100], mode: outbound } 
    source_root: %kernel.root_dir%/../web 
    web_root:  %kernel.root_dir%/../web 
    cache_prefix: cache 
0

इसके साथ कुछ भी गलत नहीं है। कल्पना में बंडल की कल्पना करें थंबनेल जेनरेट करता है पहली बार इसे बुलाया जाता है और इसे वेब/मीडिया फ़ोल्डर में संग्रहीत करता है। दूसरे कॉल पर यह सिर्फ वेब/मीडिया से पढ़ता है। इच्छा पर thumnail आकार को संशोधित करने के कुछ फायदे हैं। यदि आप प्रदर्शन के बारे में चिंतित हैं तो अपलोड समाप्त होने के बाद आपको थंबनेल जेनरेट करने के लिए कुछ नौकरी आग लगनी चाहिए, हालांकि मैंने इसे इस तरह इस्तेमाल किया और कभी शिकायत नहीं की।

+0

लेकिन आउटपुट यह सही नहीं है: Froga ikerib

+0

यदि आप देव मोड में हैं तो यह app_dev.php जोड़ देगा। पहली कॉल छवि उत्पन्न करती है, दूसरी कॉल और बाकी 301 जेनरेट की गई फ़ाइल पर रीडायरेक्ट होती है। – Michal

0

मेरे मामले में, मैं LiipImagineBundle जो AvalancheImagineBundle का एक कांटा है उपयोग करने के लिए चुना है।

मैं कॉन्फ़िगर की तुलना में यह आसान यह उपयोग करने के लिए के रूप में आप का वर्णन है, रास्तों के बारे में ज्यादा देखभाल के बिना, डेटा-लोडर के रूप में gaufrette उपयोग करने के लिए इस बंडल थे।