Join Caleb Smith for an in-depth discussion in this video Creating and running migrations, part of Learning Python and Django (2015).
- While the django models define the expected…structure of our database, Migrations are responsible…for creating the necessary scripts to change this structure…through time as we update our code…and change our models.…When a model is added to a models file,…the corresponding database table does not exist yet.…For this purpose, we need an initial migration…whose role is to create that database table.…More broadly, there are several cases…in which a migration is needed.…When a new model is created, an initial migration…creates the database table.…
Migrations are also needed when a field is added,…or removed from an existing model,…or when the attributes of a field have changed.…All of these changes to a models file…need a corresponding change to the database,…and for this purpose, a migration…needs to be created and run.…The commands for working with migrations are:…makemigrations and migrate.…The makemigrations command generates migrations files.…It reads the current model's file, and inspects the current…state of the database to determine…
- Creating a new Django project
- Defining Django models and fields
- Querying data with the Django ORM
- Building views and templates
Skill Level Intermediate
Q: pip says it was installed correctly, and I've updated the PATH variable as shown, but the pip --version command isn't working. Why?
A: Depending on your computer's setup, you'll need to restart your terminal/command prompt before the additions you've made to the PATH variable are respected. With some setups, even that won't be enough, and you may need to restart the entire machine before you are able to use the pip command directly.