Reference¶
___ _ _____
/ (_) __ _ _ __ __ _ ___ /__ \_ _ _ __ ___ _ __
/ /\ / |/ _` | '_ \ / _` |/ _ \ / /\/ | | | '_ \ / _ \ '__|
/ /_//| | (_| | | | | (_| | (_) | / / | |_| | |_) | __/ |
/___,'_/ |\__,_|_| |_|\__, |\___/ \/ \__, | .__/ \___|_|
|__/ |___/ |___/|_|
django-typer provides an extension class,
TyperCommand
, to the
BaseCommand
class that melds the Typer and
click infrastructure with the Django infrastructure. The result is
all the ease of specifying commands, groups and options and arguments using Typer and
click in a way that feels like and is interface compatible with
Django’s BaseCommand
This should enable a smooth
transition for existing Django commands and an intuitive feel for implementing new
commands.
django-typer also supports shell completion for bash, zsh, fish and powershell and extends that support to native Django management commands as well.
The goal of django-typer is to provide full Typer style functionality while
maintaining compatibility with the Django management command system. This means that the
BaseCommand
interface is preserved and the Typer
interface is added on top of it. This means that this code base is more robust to
changes in the Django management command system - because most of the base class
functionality is preserved but many Typer and click internals are
used directly to achieve this. We rely on robust CI to catch breaking changes upstream
and keep a tight version lock on Typer.
Contents:
- Management
- Option Types
- Completers
chain()
these_strings()
app_labels()
commands()
databases()
ModelObjectCompleter
date_query()
datetime_query()
duration_query()
float_query()
get_date_bounds()
get_time_bounds()
int_query()
text_query()
time_query()
uuid_query()
directories()
import_paths()
media_paths()
paths()
static_paths()
languages()
setting()
- Parsers
- Shell Completion
- Shells
- Utils