Today I create a Django project and an app inside it. If you haven't seen my first note please kindly do.
Btw, I skip the Django installation method, but basically when I created something with python, firstly I create a virtual environment and then install the package that I need. This time Django package.
OK... Today, I created a project called wisdompets using
 django-admin startproject wisdompets.
After executing that syntax, Django creates a new folder with wisdompets as the name. Inside the folder, there is a folder with the same name that contains file .py.

The explanation
| File Name | Role | 
|---|---|
| manage.py | Runs command for the project | 
| __init__.py | Tell python the folder contains python code | 
| wsgi.py & asgi.py | Files needed to connect to the live server | 
| settings.py | Configure the Django project | 
| urls.py | Routes web requests based on URL | 
For __pychache__ folder and db.sqlite3 all I know is the files are generated after I run Django for the first time using python manage.py runserver syntax in the terminal. 
The picture shown below is what I get after running the runserver syntax.

Interesting... Like I said in my first note about Django. Django project can has a couple of apps. But what is that mean? I confused before what is the meaning of a couple of apps. Because what I know is the project = app (read: the project is the same as an app. But I wrong. Apparently, what is meant like this, a web can have a blog, forum, or wiki inside it. This is what they call an app(blog, forum, etc). After knowing this I go like "Aaaah, I see know~".
To create an app with adoptions as a name, I need to run
python manage.py startapp adoptions.
Again, the syntax will automatically generate a new folder with the app name. Look the picture bellow.

| Folder and File's Name | Role | 
|---|---|
| admin.py | Define administrative interface for the app that will allow us to see and edit the data related to the application | 
| apps.py | Control settings specific for app | 
| models.py | Provide data layer used by Django to create database schema and queries | 
| test.py | Used to write unit test for app functionality | 
| views.py | Defines the logic and control flow for handling requests and defines the HTTP responses that are returned | 
| migrations/ | Folder that contains files used by Django do migrate database | 
Seem to much right? Agreed. Right now when I write this note, I still don't know much what that many files exactly do. Only the explanation that I know. As I continue to adventure, I will gradually level up.
Cover image -> Technology vector created by grmarc - www.freepik.com
              
    
Top comments (0)