Я пытаюсь обновить свои записи, используя XML ... пока первая часть задачи выполнена .... меня интересует, как перенести мои изображения на сохраненный объект (я используюimagekit для обработки изображений (кстати).Мои модели выглядят так:
class Photo(ImageModel):
name = models.CharField(max_length=100)
original_image = models.ImageField(upload_to='photos')
num_views = models.PositiveIntegerField(editable=False, default=0)
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
class IKOptions:
spec_module = 'my_app.specs'
cache_dir = 'photos'
image_field = 'original_image'
save_count_as = 'num_views'
class Room(models.Model):
...
images = generic.GenericRelation('Photo', blank=True, null=True)
...
XML, который я использую для этого, выглядит следующим образом:
<room>
<sq_ft>...</sq_ft>
<size>...</size>
<bedrooms>...</bedrooms>
<images>
<image>photos/IMG_3406.JPG</image>
<image>photos/IMG_3416.JPG</image>
<image>photos/IMG_3409.JPG</image>
</images>
</room>
Мой вопрос заключается в том, как получить изображения для данной комнаты, когдациклически просматривая файл XML и сохраняя их в этой записи.
ОБНОВЛЕНИЕ 1 Я уже пробовал этот бит:
if room.getElementsByTagName('image'):
photo = ""
for v in room.getElementsByTagName('images'):
photo = v.childNodes[0].nodeValue
room_photo = Photo.objects.create(content_object = room,
object_id = room.id, original_image = photo)
Это действительно сохраняет фотографию (в некоторой степени), но тогда поле original_image
всегда пустое, что означает, что я делаю что-то не так в приведенном выше фрагменте кода.Есть идеи?