Effective PyCharm (2021 edition) Transcripts
Chapter: PyCharm Projects
Lecture: Concept: Mark directory as...

Login or purchase this course to watch this video and the rest of the course contents.
0:00 As our applications get more complicated.
0:01 It's really important that we were able to point PyCharm in the right direction.
0:06 And one of the main ways that we do that is with the 'Mark directory' as
0:10 options. We saw that we can say some sections.
0:13 This just happens to be included with the files but we don't want to think of
0:17 it as part of the code of this project so we can exclude things in the
0:21 web. We might want to carefully control how the static files that are mapped into
0:26 the web directory. How those are found by PyCharm.
0:29 So we get auto complete for things like CSS and javascript,
0:32 which images, which is amazing.
0:34 And if we want to treat a directory as a sub application within our project,
0:39 we're going to go there and say mark this as a 'Sources root'.
0:43 So all sorts of cool things we can do here to help PyCharm better understand
0:47 a more complicated directory structure rather than just here's a folder with a file or two
0:52 Now, if we dive into these we have Sources root.
0:57 The official definition is these roots contain the actual source files and resources PyCharm uses
1:03 the source roots as the starting point for resolving imports.
1:06 We saw that when I said from shared UI import header helper,
1:11 whatever I call it, UI helper.
1:13 Those who had all squiggles under them because PyCharm knew that that relative directory structure
1:18 didn't make sense until we told it about that.
1:20 Sources root and then it did.
1:23 The 'Resource roots' are for things like style sheets and CSS 'Excluded'
1:28 Tell us by term to almost ignore them.
1:31 Usually it won't go and index them and so on,
1:34 but you can still go and find them.
1:36 And then the template folder contains things like Jinja templates,
1:40 Camelia templates, Django templates and so on.
1:43 Those are your rich templates for your Web application.