2010-06-25 2 views
1

Привет, Используя Django, я хочу, чтобы создать tar.gz, который содержит следующие файлы, и вынести tar.gz файл:Джанго деготь поколение по запросу

контента с сервера Ubuntu:

/home/user/myfolder 
/home/user/image.jpg 
an xml file from www.mysite.com/foo.xml (which is a dynamicly generated xml file. 

Вынесено tar.gz файл

myfolder/ 
     content/ 
      ..... 
image.jpg 
foo.xml 

что бы лучший способ сделать это внутри достижения этой цели как вид Django?

ответ

2

Модуль tarfile, вероятно, является хорошим местом для начала.

Возможно, вам захочется кэшировать файл где-нибудь в файловой системе, чтобы сэкономить слишком много работы. Нет причин для восстановления файла, если содержимое не изменилось.

0

Вы можете использовать Джанго-tarview (установка через pipfrom PyPi, или получить его от github)

Продлить tarview.views.BaseTarView и осуществлять get_files:

from tarview.views import BaseTarView 

class TarView(BaseTarView): 
    def get_files(self): 
     return [File(open('test_file.txt'), name="test_file.txt"), 
      ContentFile(b"I am a text file", name="text.txt")] 
Смежные вопросы