Hier verwende ich als Projektnamem und Ordnername nftwall.
mkdir nftwall
cd nftwall
virtualenv -p python .
source bin/activate
pip install django
mkdir src
cd src
django-admin startproject nftwall .
Man kann nun den das Projekt testweise starten:
python manage.py runserver
In nftwall/settings.py den DNS Namen eintragen, über den man im Browser auf den Service zugreift:
ALLOWED_HOSTS = ['host1.mydomain.de']
Synchronisieren der Einstellungen mit dem Projekt.
python manage.py migrate
Änderung der listening IP und des Hostnamen über den auf den Dienst zugegriffen werden darf.
python manage.py runserver [::]:8000
Einen neue superuser anlegen
python manage.py createsuperuser
Im Projekt root
python manage.py startapp products
Im Unterordner products die Datei models.py bearbeiten
class Product(models.Model):
title = models.TextField()
description = models.TextField()
price = models.TextField()
summary = models.TextField()
Im gleichen Ordner die Datei admin.py füllen (relativer Import)
from .models import Product
admin.site.register(Product)
In der settings.py die App hinzufügen
INSTALLED_APPS = [
[...]
'products',a
[...]
]
Nach jeder Änderung an der models.py muss man makemigrations und migrate laufen lassen.
python manage.py makemigrations
python manage.py migrate
Man kann auch Datensätze anlegen, indem man die django Kommandozeile benutzt.
python3 manage.py shell
from products.models import Product
Product.objects.create(title="test2", description="wasauchimmer", price="1234", summary="sweet")
Nun machen wir einige Anpassungen und löschen erstmal Dateien:
Nun wieder in die models.py