Jumping from a view to a template

Open the file views.py for editing (F4). In the left gutter, next to the line template_name = "polls/index.html", you see the icon .

Hovering the mouse pointer over this icon reveals the following pop-up window:

Clicking this icon results in jumping directly to the template index.html, that resides in the folder polls under templates:

Jumping from a template to a view

In the left gutter of the template file index.html, you see the icon . If you hover your mouse pointer over this icon, you'll see the following pop-up window:

Clicking this icon leads you directly to the corresponding view.

Jumping between views and urls.py file

PyCharm allows you to easily navigate between a particular view and the corresponding url. This is how it's done:

Hover your mouse pointer over the view name, while keeping Ctrl key pressed, and see the view name turning into a hyperlink:

If you click this hyperlink, you'll jump directly to the corresponding URL:

Vice versa, you can also jump from a URL to the corresponding view. Again, in the urls.py file, hover your mouse pointer over the view name, while keeping Ctrl key pressed, and see the view name turning into a hyperlink.

Ctrl+click the view name - and find yourself in the corresponding view.

By the way, if you click a pin icon in the pop-up, this pop-up becomes "pinned" - that is, turns into a tool window:

Finally, open a template in the editor (F4), say, index.html and hover your mouse pointer over detail, while keeping Ctrl key pressed, and see the name turning into a hyperlink. Click this hyperlink - you immediately jump to the file urls.py:

Navigating to implementation and declaration

In a Django project, you see the same icons and as in a pure Python project. When you hover your mouse pointer over such an icon, you see a pop-up window, like the following:

You can also jump to a declaration or implementation of a symbol. To do that, just place the caret at the implementing/overriding symbol and press Ctrl+B or Ctrl+Alt+B (or choose Navigate | Declaration or Navigate | Implementation on the main menu):

Jumping to tests

Django applications can be tested same as the pure Python ones. Same way you can create tests for the Django projects, for example, press Ctrl+Shift+T: