What directory structure should i set up for my Django project?

Posted on 2015-01-20
Last Modified: 2015-01-21
I was wondering what the best directory structure would be for my Django project? I am only building one responsive website which will link to 3rd party APIs and use mapping. I have created a project from the command line which then created a sub directory of the same name. Should that second directory be at the same level as a new app folder that I want to create or should i put the app within that sub folder? I am getting confused since the file is in the sub directory for the project and I have no settings file in my app folder.

So is the attached correct and if so does the app folder inherit the settings from the Dango_project(n1) settings file?

Question by:lz7cjc
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
LVL 17

Accepted Solution

gelonida earned 500 total points
ID: 40560837
To create a new django project:
you type
django-admin startproject mypjt

Open in new window

The directory tree will be something like this:

Open in new window

mypjt/ will be the path for your entire django project and will also contain the script, which you shall use for any further activities concerning this project.

mypjt/ will also be the directory to put in your pythonpath. imports will be relative to that path.

is the directory containing all settings and the top level file you can see this as kind of the top level application.

Let's now create your django application (you could create more than one app belonging to this project if you like to,

python mypjt/ startapp myapp

Open in new window

Alternatively you could type.
cd mypjt
 python startapp myapp 

Open in new window

the directory tree looks now:

Open in new window

you see that your django application is now located  in mypjt/myapp.

This is the default directory structure for django 1.4 (and I think also for some newer versions)
the structure for django 1.3 was different.

Hope that helps

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Dictionaries contain key:value pairs. Which means a collection of tuples with an attribute name and an assigned value to it. The semicolon present in between each key and values and attribute with values are delimited with a comma.  In python we can…
The purpose of this article is to demonstrate how we can use conditional statements using Python.
Learn the basics of strings in Python: declaration, operations, indices, and slicing. Strings are declared with quotations; for example: s = "string": Strings are immutable.: Strings may be concatenated or multiplied using the addition and multiplic…
Learn the basics of while and for loops in Python.  while loops are used for testing while, or until, a condition is met: The structure of a while loop is as follows:     while <condition>:         do something         repeate: The break statement m…

635 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question