Добрый день.
Нужно сделать что-бы при клике на кнопку вся информация из БД экспортировалась в csv и он скачивался.
Вьюха:
def export_view(request):
"""
Export a csv file with data from database.
"""
subprocess.call('python to_csv.py', shell = True)
f = open('output.csv', 'r')
response = HttpResponse(f, content_type='application/force-download')
response['Content-Disposition'] = 'attachment; filename=' + 'output.csv'
return response
to_csv.py
import pandas as pd
import sqlite3
import os
import subprocess
subprocess.call("rm output.csv", shell = True)
con = sqlite3.connect("db.sqlite3")
df = pd.read_sql("SELECT * FROM app_contacts", con)
df.to_csv('output.csv', index=False, encoding='utf-8')
На локальном компьютере без virtualenv все работает прекрасно. Пытаюсь перенести на сервер с созданным виртуальным окружением и там ничего не происходит. Вернее файл скачивается, но он старый. Тоесть команда rm не сработала. Права есть ручками из консоли все получается.
Как можно получше сделать?