Red User, Blue User, MyUser, auth.User

Django's contrib.auth framework allows to you specify a custom user model. Why does this matter? When should you use a custom user model? And how do you live with it once you've got one?

Django's contrib.auth is a key part of most Django websites. However, there are some important details you need to understand if you're going to make good use of custom user models. Some of these details are technical - for example, custom user models require some special consideration when interacting with migrations.

But even more important are the details about why custom user models are important in the first place. Custom User models were neccessary to break some really common anti-patterns about user identity - anti-patterns that are baked into Django's default user model, and are extraordinarily common in the wider web development world.

In this talk, you'll learn about user identity: what it means, and what you have to think about when you're developing the user modelling parts of your Django project. You'll also learn how to use Django's custom user model in practice.

Presented by

Russell Keith-Magee

Dr Russell Keith-Magee is a 10 year veteran of the Django core team, and for 5 years, was President of the Django Software Foundation. He’s also the founder of the BeeWare project, developing GUI tools to support the development of Python software. He has keynoted Python conferences on all but 2 continents, and will gladly keynote PyCon Antarctica as soon as the penguins get themselves organized. He has also put his feet in every ocean in the world (plus one sea). He lives in Perth, Western Australia with his wife, two children, and two animals that claim to be cats but have almost no feline properties.