Django hat ein ORM (Object Relationship Mapping). ORM bezieht sich auf die Fähigkeit, zwischen Programmquellcode und Datenbankdaten zu konvertieren. Beschreiben Sie Django in modele.py mit Pythn.
Schreiben wir nun das Post-Modell.
/crud/blog/models.py
from django.db import models
from django.contrib.auth.models import User
from django.utils import timezone
class Post(models.Model):
#Titel CHAR bis zu 100 Zeichen
title = models.CharField(max_length=100)
#Inhaltstext
content = models.TextField()
#Externe Schlüsselbeschränkung des Autors(Eins-zu-viele-Beziehung)Löschen Sie untergeordnete Daten sowie übergeordnete Benutzerdaten
author = models.ForeignKey(User, on_delete=models.CASCADE)
#Buchungsdatum Datumstyp Aktuelle Uhrzeit
date_posted = models.DateTimeField(default=timezone.now)
#Anzeigeeinstellung des Verwaltungsbildschirms Titel anzeigen
def __str__(self):
return self.title
(crud-_w5mSGH2) C:\django\crud>python manage.py makemigrations
Migrations for 'blog':
blog\migrations\0001_initial.py
- Create model Post
(crud-_w5mSGH2) C:\django\crud>
Die folgenden Dateien werden automatisch generiert. Sie müssen es nicht bearbeiten.
/crud/blog/migrations/0001_initial.py
# Generated by Django 3.1.1 on 2020-10-12 12:32
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='Post',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=100)),
('content', models.TextField()),
('date_posted', models.DateTimeField(default=django.utils.timezone.now)),
('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
]
(crud-_w5mSGH2) C:\django\crud>python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, blog, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying auth.0012_alter_user_first_name_max_length... OK
Applying blog.0001_initial... OK
Applying sessions.0001_initial... OK
(crud-_w5mSGH2) C:\django\crud>
Wenn es sich um ein Original-Blog handelt, werde ich einen Artikel auf dem Posting-Bildschirm veröffentlichen, aber ich habe ihn noch nicht implementiert. Django verfügt über einen Verwaltungsbildschirm, über den Sie Daten registrieren können. Daher möchte ich die Artikeldaten einmalig auf dem Verwaltungsbildschirm registrieren.
Sie müssen Django mitteilen, was Sie auf dem Admin-Bildschirm sehen möchten. Lassen Sie uns die folgenden Dateien ändern.
crud/blog/admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post)
Erstellen Sie einen Administratorbenutzer, um sich beim Administratorbildschirm anzumelden. Benutzer: admin Passwort: pass
(crud-_w5mSGH2) C:\django\crud>python manage.py createsuperuser
Nutzername(leave blank to use 'wmgoz'): admin
Mail Adresse: ***@***.com #← Bitte benutzen Sie Ihre eigene Mail
Password:
Password (again):
Dieses Passwort ist zu kurz. Es sind mindestens 8 Zeichen erforderlich.
Dieses Passwort ist zu häufig.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.
(crud-_w5mSGH2) C:\django\crud>
Starten wir den Entwicklungsserver und melden Sie sich beim Verwaltungsbildschirm an.
python manage.py runserver
Als nächstes rufen wir den Verwaltungsbildschirm "http://127.0.0.1:8000/admin/" auf. Der folgende Verwaltungsbildschirm wurde angezeigt.
Klicken Sie im Verwaltungsbildschirm neben "Beiträge" auf "+ Hinzufügen", um mit der Dateneingabe fortzufahren.
Registrierung von Daten ①:
Registrierung von Daten ②:
Es wurden zwei Artikel veröffentlicht.
Das ist alles für heute. Vielen Dank.
Recommended Posts