Django: установка DEBUG = False вызывает ошибку сервера (500)
шаблоны работают, когда DEBUG = True, но изменение на False дает ошибку сервера (500) я использовал django 3.2.8
Это файл views.py
def test(request):
context = {}
if request.method == "POST":
uploaded_file = request.FILES['document']
print(uploaded_file)
if uploaded_file.name.endswith('.csv'):
#save file in media folder
savefile = FileSystemStorage()
name = savefile.save(uploaded_file.name, uploaded_file) #name of the file
#know where to save file
d = os.getcwd() #current directory of the project
file_directory = d + '\media\\' + name
readfile(file_directory)
return redirect(results)
else:
messages.warning(request, 'File was not uploaded. Please use csv or xlsx file extension!')
return render(request, 'test.html', {})
#project.csv def readfile(filename): global rows, columns, data, my_file, missing_values, mydict, dhead, dtail, dinfo, ddesc, dcor, graph, dheat
my_file = pd.read_csv(filename, engine='python', index_col = False, sep='[: ; , | -]', error_bad_lines=False)
data = pd.DataFrame(data=my_file)
#my_file= read_file(filename)
data = pd.DataFrame(data=my_file)
mydict = {
"data ": data.to_html(),
}
#rows and columns
rows = len(data.axes[0])
columns = len(data.axes[1])
#find missing data
missingsings = ['?','0','--']
null_data = data[data.isnull().any(axis=1)]
missing_values = len(null_data)
def results(request):
message = 'I found ' + str(rows) + ' rows and ' + str(columns) + ' columns. Missing data are: ' + str(missing_values)
#message = info
messages.warning(request, message)
return render(request, 'results.html', context = mydict)
Это файл settings.py
Django не поддерживает обслуживание файлов в продакшене (посмотрите здесь).
Если вы хотите сохранять и обслуживать файлы в продакшене с помощью debug=False попробуйте перейти на другой бэкенд хранения .
Вы можете отладить ошибку с помощью этой настройки:
DEBUG_PROPAGATE_EXCEPTIONS = True
Смотрите ссылку здесь:- https://docs.djangoproject.com/en/4.0/ref/settings/#debug-propagate-exceptions