Django Практика
Практика Django

Файловий менеджер у браузері
Необхідно реалізувати аналог файлового менеджера
- login, logout, користувачі
- settings + model можливість вибирати, які колонки відображати + одиниці виміру розміру файлів (Kb, Mb, Gb, Tb), колонки можна відключати всі, крім name
- Колонки: Name, Type (file, dir, simlink), Size, Permissions
- за директоріями можна переходити, клікнувши на них
- вгорі завжди відображається .. - перехід на попередню директорію
- тестові файли мають бути клікабельні - при переході відображати вміст
- nav bars - верхній і нижній (стутус бар, поточна директрія, всього файлів)
os
Отримання атрибутів файлу
from datetime import datetime
from os import scandir
def convert_date(timestamp):
d = datetime.utcfromtimestamp(timestamp)
formated_date = d.strftime('%d %b %Y')
return formated_date
def get_files():
dir_entries = scandir()
for entry in dir_entries:
if entry.is_file():
info = entry.stat()
print(f'{entry.name}\t Last Modified: {convert_date(info.st_mtime)}')
>>> get_files()
file1.py Last modified: 04 Oct 2018
file3.txt Last modified: 17 Sep 2018
file2.txt Last modified: 17 Sep 2018
Запис у session
if 'path' not in request.session:
request.session['path'] = os.getcwd()