Fast, Extensible Progress Meter (tqdm) For Django
Project description
Fast, Extensible Progress Meter (tqdm) For Django.
Use tqdm in django management commands seamlessly. It uses tqdm and it is meant to be used with Django. It provides simple universal commands for Django management command to output text using standard command functions and tqdm.
Usage
from django_tqdm import BaseCommand
from time import sleep
class Command(BaseCommand):
def handle(self, *args, **options):
# Output directly
self.error('Error')
self.info('Info')
# Output through tqdm
t = self.tqdm(total=50)
for x in range(50):
sleep(0.03)
t.update(1)
if x == 10:
t.info('X = 10')
if x == 20:
t.error('X = 20')
Advanced:
info(text, ending='\n', fatal=False)
error(text, ending='\n', fatal=False)
write(text, ending='\n', fatal=False, error=False)
If you set fatal to True it will terminate the command after printing the message.
For documentation on tqdm see tqdm.
Comparison
In django-tqdm:
self.info('info')
self.error('error')
In vanilla Django:
self.stdout.write('info')
self.stderr.write('error')
Demos
Demo 1 - Simple usage
self.info('info')
self.error('error')
Demo 2 - tqdm usage
t = self.tqdm(total=50)
for x in range(50):
sleep(0.02)
t.update(1)
if x == 10:
t.info('info')
if x == 40:
t.error('error')
Demo 3 - Vanilla tqdm with default settings for comparison
t = tqdm(total=50)
for x in range(50):
sleep(0.02)
t.update(1)
if x == 25:
t.write('info')
if x == 40:
t.write('error', file=sys.stderr)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django_tqdm-0.0.3.tar.gz
(4.6 kB
view hashes)