Development

Docker Image for Django Application (Alpine Based)

Apline based images have a huge advantage by it’s final size but in most cases in the Python world if neotiates by Python dependencies which takes too long to build project packages and final size sometimes may be greater than same image build on debian based image. But Apline still great solution …

Django: Database Router for Multiple Databases

Using multiple database in the Django project you may face with situation when you need apply migrations for some app or model just to the some databse instead all of defined databases, or you need to perform read/write actions for models of the some application only for specific database instead s…

Django: Configure staticfiles directory for manage.py collectstatic

Starting new project it’s have no configured staticfiles directory configured by default, so it is not able you to use python manage.py collectstatic script to generate staticfiles bundle. It is small tip how to configure staticfiles fast and easy, just add this line to your settings.py file.

Django: Pass Instance With Predefined Data to Form (CBV)

In case when you need to initialize form with already predefined details of the form instance, for example form that add comment to a post - you can predefine post_id in the form instance instead applying it in the save() method.

Django get_success_url() to Previous Page

Easy way to redirect user on previous (original) page after form processing it is use HTTP_REFERER header, here an example how it’s may be implemented in the get_success_url() of the Django’s class based view.

Raise Form Validation Error from form_valid() Method

In case if you need to make some validation steps directly in the view’s def form_valid() method and raise an ValidationError here an example

Docker Image for Django Application (Debian Based)

Docker is most reliable and flexible way to distribute your Django applications, it able to include entire environment settings, dependencies and application files to deploy it to the server or any cloud provider.This post show you a few examples how to build Docker image for your Django applicatio…

Choices Yes/No for Boolean Field in Django

Sometimes you need to represent boolean field of the Django model as dropdown list choices, like “Yes/No” instead default boolean field form widget - CheckboxInput. You can implement it like this.

Add Hash to Static Files Names in Django

It is very useful to append hash at the end of static files name such as js/css to prevent situation when website visitors after update still have old version of the file in browser cache.Django have built-in tool which automatically add hash to the all static files of Django project on python mana…

Django Colored Output in PyCharm Run Configurations

Starting using PyCharm IDE for Django development you migt face with issue that default output of the PyCharm “Run Configuration” or “Services” panes colored by red regardless is it error or info line.

Use Environment Variables in Django - Efficient Way

If you stil not use environment variables to configure your Django application - dont wait, do it! I’ll tell you efficient way to use environment variables in the Django’s settings.py file which allows you to set environment variables via the server environment and in the .env file for local develo…

How to Use Multiple Databases in Django

Django ORM very well designed to use multiple relational databases (regardless engine) in single project. To start using two databases in Django project you need to configure connection to all of them in the settings.py file.