मैं और नीचे की तरह विधि बचाने ओवरराइड, get_thumbnails और sorl साथ बचाने ..ओवरराइड विधि बचाने - 'imagefile' ऑब्जेक्ट कोई विशेषता '_committed'
लेकिन मिल त्रुटि 'ImageFile' object has no attribute '_committed'
class HotelPhotos(models.Model):
hotel = models.ForeignKey(Hotel, related_name='photos')
code = models.CharField(max_length=255)
original = models.ImageField(upload_to="media")
medium = models.ImageField(upload_to="media", null=True, editable=False)
thumbnail = models.ImageField(upload_to="media", null=True, editable=False)
def save(self, *args, **kwargs):
super(HotelPhotos, self).save(*args, **kwargs)
self.medium = get_thumbnail(self.original,
'100x100',
crop='center',
quality=99)
self.thumbnail = get_thumbnail(self.original,
'50x50',
crop='center',
quality=99)
super(HotelPhotos, self).save(*args, **kwargs)
किसी भी है विचार?
आपकी समस्या को बचाया या हल किया? ;) पी। दो बार 'सुपर' सेव विधि को कॉल न करें। 'सुपर' सेव आपको अतिरिक्त उदाहरण सेट करने के लिए उस उदाहरण का उदाहरण देगा: 'instance = super (HotelPhotos, self)। सेव (* args, ** kwargs)' –
'.name' का उपयोग करना बेहतर है, .url' में MEDIA_URL भी शामिल होगा, इसलिए अंत में (यदि आपका MEDIA_URL खाली नहीं है) तो आप/मीडिया/मीडिया/कैश/... में प्रवेश करेंगे –