terminal@Passendes Verzeichnis
mkdir {project-name}
cd {project-name}
root-dir
bezieht sich auf das hier erstellte Verzeichnis {project-name}.terminal@root-dir
python -m venv {env-name}
terminal(ps)
{env-name}\Scripts\activate
or
terminal(bash)
source {env-name}/bin/activate
Sobald Sie dies getan haben Öffnen Sie die Projektdatei und das Terminal im Editor
terminal
python -m pip install --upgrade pip
python -m pip install Django
django-admin.exe startproject {project-name} .
{Projektverzeichnis}
bezieht sich auf das hier erstellte Verzeichnis.terminal
python manage.py startapp {app-name} .
{app-dir}
bezieht sich auf das hier erstellte Verzeichnis.von hier, Der Hauptteil der Baseline umfasst die Isolierung von settings.py nach Umgebung und die Verwaltung von Umgebungsvariablen nach .env.
{app-dir}/urls.py
from django.urls import path, include
from django.conf.urls import url
from . import views
app_name = '{app-name}'
urlpatterns = [
path('', views.index, name='index'), #Index-Handler ist Ansichten.Angenommen, es ist in py definiert
]
{project-dir}/urls.py
from django.conf.urls.static import static
from django.conf import settings
from django.contrib import admin
from django.urls import path, include
from django.views.generic import TemplateView
urlpatterns = [
path('admin/', admin.site.urls),
path("", include("fit.urls")),
path('sw.js', (TemplateView.as_view(template_name="book_manager/sw.js", content_type='application/javascript', )), name='sw.js'),
]
views.py
from django.shortcuts import render
def index(request):
return render(request, "fit/index.html", {
"key": "value",
})
index.html
) direkt unter app-dir / template
vor.install django-dotenv
terminal
python -m pip install django-dotenv
root/.env
SECRET_KEY = {Kopierter geheimer Schlüssel}
DJANGO_SETTINGS_MODULE = fitmod.settings.local #Lokal(Einstellungen werden später getrennt)
settings.py
from dotenv import load_dotenv
# loading env-vars
load_dotenv('.env')
SECRET_KEY = os.getenv("SECRET_KEY")
# ~Abkürzung~
INSTALLED_APPS = [
...
'{app-name}',
]
# ~Abkürzung~
LANGUAGE_CODE = "ja"
TIME_ZONE = "Asia/Tokyo"
root / project-dir / settings
.wsgi
root/{project-dir}/wsgi.py
import os
from django.core.wsgi import get_wsgi_application
from dotenv import load_dotenv
load_dotenv('.env')
DJANGO_SETTINGS_MODULE = os.getenv("DJANGO_SETTINGS_MODULE")
os.environ.setdefault('DJANGO_SETTINGS_MODULE', DJANGO_SETTINGS_MODULE)
application = get_wsgi_application()
wsgi
root/manage.py
#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys
from dotenv import load_dotenv
load_dotenv('.env')
DJANGO_SETTINGS_MODULE = os.getenv("DJANGO_SETTINGS_MODULE")
def main():
os.environ.setdefault('DJANGO_SETTINGS_MODULE', DJANGO_SETTINGS_MODULE)
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line(sys.argv)
if __name__ == '__main__':
main()
Das Ende des Hauptteils der Grundlinie.
migration
terminal
python manage.py makemigrations
python manage.py migrate
createsuperuser
terminal
python manage.py createsuperuser
terminal
python manage.py runserver
{root-dir}/
│
├ {project-name(project-dir)}
│ ├ settings #hinzufügen
│ │ ├ init.py
│ │ ├ local.py
│ │ └ production.py
│ ├ init.py
│ ├ urls.py
│ ├ asgi.py
│ ├ wsgi.py
│ └ db.sqlite3 #Bei Verwendung von SQLite
│
├ {app-name(app-dir)}
│ ├ migrations
│ ├ template #hinzufügen
│ │ └ {app-name}
│ │ └ ...
│ ├ static #hinzufügen
│ │ └ {app-name}
│ │ └ ...
│ ├ init.py
│ ├ admin.py
│ ├ apps.py
│ ├ model.py
│ ├ test.py
│ ├ urls.py #hinzufügen
│ └ views.py
│
├ venv/
│ └ ...
│
├ manage.py
│
├ .env #hinzufügen
├ .gitignore #hinzufügen
├ requirements.txt #hinzufügen(Bei Verwendung von Heroku)
├ Procfile #hinzufügen(Bei Verwendung von Heroku)
├ runtime.txt #hinzufügen(Bei Verwendung von Heroku)
└ db.sqlite3 #Bei Verwendung von SQLite
.gitignore
root/.gitignore
*.pyc
*~
__pycache__
db.sqlite3
/static
.env
venv
Recommended Posts