Интеллектуальный указатель является изменением RAII. RAII означает, что приобретение ресурса является инициализацией. Интеллектуальный указатель получает ресурс (память) перед использованием и затем выбрасывает его автоматически в деструкторе. Две вещи происходят:
, Например, другим примером является сетевой сокет RAII. В этом случае:
Теперь, как Вы видите, RAII является очень полезным инструментом в большинстве случаев, поскольку он помогает людям заняться сексом.
источники C++ интеллектуальных указателей находятся в миллионах по всей сети включая ответы выше меня.
Это находится в исходном коде для photologue (см. models.py
, немного адаптировано для удаления ненужных вещей):
def admin_thumbnail(self):
return u'<img src="%s" />' % (self.image.url)
admin_thumbnail.short_description = 'Thumbnail'
admin_thumbnail.allow_tags = True
Бит list_display
тоже выглядит идентичным, и я знаю, что это работает. Единственное, что мне кажется подозрительным, это ваш отступ - две строки, начинающиеся с image_img
в конце вашего кода models.py
, должны быть на одном уровне с def image_img (self) :
, например:
def image_img(self):
if self.image:
return u'<img src="%s" />' % self.image.url_125x125
else:
return '(Sin imagen)'
image_img.short_description = 'Thumb'
image_img.allow_tags = True