diff options
Diffstat (limited to 'management/commands/listtimetables.py')
-rw-r--r-- | management/commands/listtimetables.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/management/commands/listtimetables.py b/management/commands/listtimetables.py new file mode 100644 index 0000000..c5ef41f --- /dev/null +++ b/management/commands/listtimetables.py @@ -0,0 +1,39 @@ +# Copyright (C) 2017 Alban Gruin +# +# celcatsanitizer is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# celcatsanitizer is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with celcatsanitizer; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +from django.core.management.base import BaseCommand +from edt.models import Timetable + + +class Command(BaseCommand): + help = "List timetables in the database" + + def add_arguments(self, parser): + parser.add_argument("--order-by-id", action="store_true") + + def handle(self, *args, **options): + timetables = Timetable.objects.all() + if options["order_by_id"]: + print("oui") + timetables = timetables.order_by("id") + else: + timetables = timetables.order_by("name") + + for timetable in timetables: + self.stdout.write("{0} (id: {1})".format(timetable, timetable.id)) + + self.stdout.write("") + self.stdout.write(self.style.SUCCESS("Done.")) |