Skip to main content

print_sql_tool

Project description

SqlPrinter

Нужен для принтов sql-кода, которые генерирует джанго.

Использование

  1. Использование в качестве декоратора:
@PrintSqlTool()
def some_func():
    ...
    models.SomeModel.objects.first()
    ...
    models = models.SomeModel.objects.all()
    models_data = get_models_data(models)
    ...

    return smth

В этом случае мы увидим все запросы, которые проходили в функции

  1. Использование в качестве контекстного менеджера
def some_func():
    ...
    models.SomeModel.objects.first()
    ...
    with PrintSqlTool():
        models = models.SomeModel.objects.all()
        models_data = get_models_data(models)
    ...

    return smth

В этом случае мы увидим все запросы, которые были выполнены внутри блока контекстного менеджера.

Если в проекте используется несколько бд:

Мы сможем увидеть запросы только к одной из бд, по умолчанию это бд, у которой alias = default Если нужно указать другую бд, для которой нужно принтить запросы, то есть аргумент db_alias:

@PrintSqlTool(db_alias='some_db_alias')
def some_func():
    ...
    models.SomeModel.objects.first()
    ...
    models = models.SomeModel.objects.all()
    models_data = get_models_data(models)
    ...

    return smth

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

print_sql_tool-0.0.4.tar.gz (3.4 kB view details)

Uploaded Source

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page