2012-10-07 16 views
8

मैं Django sorl-थंबनेल इस्तेमाल करने की कोशिश प्रदर्शित नहीं करता है, लेकिन यह छवियों को प्रदर्शित नहीं करता है (और किसी भी त्रुटि दिखाने शामिल नहीं है)।Django sorl-थंबनेल छवियों

Settings.py:

INSTALLED_APPS = (
    .... 
    'sorl.thumbnail', 
) 

मॉडल:

class Toy(models.Model): 
    name = models.CharField(max_length=50, verbose_name=u'Name') 
    image = ImageField(upload_to='site_media/images') 

टेम्पलेट्स:

<div id="toy"> 
       {% for p in toys %} 
        <div class="toy"> 
           # toy.image - this is model_name.image field 
          {% thumbnail toy.image "100x700" as im %} 
          <img style="margin:{{ im|margin:"100x700" }}" src="{{ im.url }}" width="{{ im.x }}" height="{{ im.y }}"> 
          {% endthumbnail %} 

          <p> 
          <span> {{ p.name }} </span> 
          <span> {{p.unit_price}} </span> 
          </p> 
        </div> 
       {% endfor %} 
      </div> 

urls.py:

url(r'^site_media/(.*)$', 'django.views.static.serve', {'document_root' : os.path.join(os.path.dirname(__file__), 'site_media')}), 

उत्तर

3

Have you imported मॉडल परिभाषा मॉडल में परिभाषा से सॉर्ल से? इसे स्वचालित रूप से काम करना आवश्यक है।

इसके अलावा you need to run in console./manage.py syncdb क्योंकि डिफ़ॉल्ट कॉन्फ़िगरेशन में सॉर्ल डेटाबेस में थंबनेल के कैश नाम रखता है। इसके लिए डेटाबेस में अपनी खुद की टेबल बनाना है।

क्या आप STATIC_URL, STATICFILES_DIRS आदि की अपनी सेटिंग्स भी दिखा सकते हैं?

13

वास्तव में, सॉर्ल से छविफिल्ड का उपयोग करना केवल मूल छवि हटा दिए जाने पर automatically delete थंबनेल के लिए आवश्यक है।

डिफ़ॉल्ट रूप से sorl.thumbnail कोई त्रुटि प्रदर्शित नहीं करता है और थंबनेल निर्माण सफल नहीं होने पर चुपचाप विफल रहता है। त्रुटियों को देखने के लिए, अपने settings.py में जोड़ने

THUMBNAIL_DEBUG = True 

। इससे आपको समस्या को ठीक करने में मदद मिलनी चाहिए।

+0

सेटिंग्स फ़ाइल में उपरोक्त सेटिंग्स को जोड़ा गया, अभी भी कोई त्रुटि नहीं है और कोई छवियां प्रदान नहीं की गई हैं। :/ – Amyth

+0

बहुत उपयोगी! धन्यवाद। – JDavies

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