21 Jun, 17

How To Exclude node_modules Directory When Running collectstatic Command in Django

If you use npm or yarn to install frontend packages inside your Django project, you may notice, that when you run python manage.py collectstatic command, it ends up collecting huge amounts of files.

That's because by default, collectstatic grabs all content of static directories inside the project, including thousands of ...

Read now
08 Jun, 17

How To Show Correct List Item Indexes When Using Pagination in Django

In your Django template put something like this:

1
2
3
4
5
  1. <ul>
  2. {% for object in object_list %}
  3. <li>{{ forloop.counter0|add:page_obj.start_index }}. {{ object }}</li>
  4. {% endfor %}
  5. </ul>

Where:

object_list - is a list of objects produced by pagination;

page_obj - is a page ...

Read now
07 Jun, 17

How To Get a List Of All User Permissions Available in Django Based Project

Django comes with a simple permissions system. It provides a way to assign permissions to specific users and groups of users. The system adds "change, remove and add" permissions automatically to every model class. And it's pretty easy to add custom permissions to a model class, like this:

 

  ...

Read now
23 May, 17

Getting path and accessing persistent volumes in Docker for Mac

If you use persistent data volumes in Docker, you might want to access them via command-line. If your docker host is Linux, that's not a problem; you can find Docker volumes by /var/lib/docker/volumes path.

However, that's not the case when you use Docker for Mac. Try to ...

Read now
23 Feb, 17

Make Your Developer's Life Easier By Reducing Number Of Opened Tabs in Pycharm

When coding, I often find myself overwhelmed by a number of opened tabs in my editor. I just seem to have opened every single .py file of a Django project. And it's kinda hard to find a way in this evergrowing of tabs.

Given that, I was really happy to ...

Read now
22 Feb, 17

New in Django 1.11: Template-based widget rendering

There's a very interesting change coming with Django 1.11 - Template-based widget rendering.

To make customizing widgets easier, form widget rendering is now done using the template system. In older versions, widgets were rendered using Python.

You can get more details about it from the form rendering API docs page ...

Read now
10 Feb, 17

How To Export Django Model Data Along With Its Parent Model Data via dumpdata Command

Django dumpdata command lets us export model objects as fixtures and to store them in json / xml formats.

All is good and works fine until you need to export a model that is a child of a concrete model and shares two database tables (one for parent another is for the ...

Read now
02 Feb, 17

How To Remove Snippets Menu Item From Wagtail CMS Admin Menu

Put this hook into wagtail_hooks.py file of your Wagtail CMS app.

1
2
3
4
5
  1. from wagtail.wagtailcore import hooks
  2. @hooks.register('construct_main_menu')
  3. def hide_snippets_menu_item(request, menu_items):
  4. menu_items[:] = [item for item in menu_items if item.name != 'snippets']

Restart your server and you're done!

Read now
20 Jan, 17

Use Specific() Method On PageQuerySet To Access Referenced Model's Field Data in Wagtail CMS

Wagtail CMS provides a very handy content tree that really helps in organizing website's content hierarchy. The tree itself is powered by django-treebeard library (https://github.com/django-treebeard/django-treebeard). 

As a developer you should be aware of several handy methods that you can execute on any item of a ...

Read now
18 Jan, 17

Note on installing Comodo Positive SSL on Nginx

Usualy, Comodo sends you an archive containing two files: example.crt and example.ca-bundle. In order to install your certificate on Nginx, you need to concatenate these two files at first:

1
  1. cat example.crt example.ca-bundle >> example.ssl-bundle.crt

Now, in Nginx config, link ssl_certificate property to resulting example ...

Read now