• 
      

    Add support for creating tables from models in EvolveAppTask.

    Review Request #10567 — Created May 30, 2019 and submitted — Latest diff uploaded

    Information

    Django Evolution
    master

    Reviewers

    EvolveAppTask now has the capability to install models in the
    database, creating all the necessary tables for the models and any
    related models (such as for many-to-many relations).

    It does this by first checking whether we're evolving an app for the
    first time, or whether we're adding a model for an existing app for the
    first time. These models, and the SQL needed to install them, are
    gathered during the preparation stage. All new models across all apps
    are then installed during EvolveAppTask.execute_tasks, before
    performing any evolutions for any apps.

    EvolveAppTask.execute can also take a create_models_now boolean
    parameter, which will force installation of models immediately. This
    will be needed for the initial installation of the Django Evolution
    models in an upcoming change.

    Unit tests pass for SQLite, MySQL, and Postgres on Django 1.6 and 1.11.

    Commits

    Files