Source code for clinner.run.django_command

import argparse  # noqa

try:
    from django.core.management.base import BaseCommand, CommandParser
except ImportError:
    BaseCommand = object
    CommandParser = None

__all__ = ["DjangoCommand"]


[docs]class DjangoCommand(BaseCommand): """ Wrapper that makes a Django command from a Main class, including parsers only for commands. """ main_class = None def __init__(self, *args, **kwargs): self.help = self.main_class.description super(DjangoCommand, self).__init__(*args, **kwargs) self.command = self.main_class(parse_args=False) self.command.cli.disable() def add_arguments(self, parser): self.command._commands_arguments(parser=parser, parser_class=CommandParser) def handle(self, *args, **options): self.command.run(**options)