$ python manage.py makemigrations
$ python manage.py migrate
З makemigrations
Команда створює новий файл міграції, якщо виявлені зміни схеми. (Вони знайдені в quoteapp/migrations
але зазвичай вам не потрібно буде спілкуватися з ними безпосередньо.) migrate
Команда застосовує зміни.
Побудова подання
Далі розглянемо погляд, який приймає запит і готує модель (за необхідності), і передає її, щоб її надати як відповідь. Нам знадобиться лише один погляд, знайдений на quoteapp/views.py
:
// cat quoteapp/views.py
from django.shortcuts import render
from django.template.loader import render_to_string
from django.http import HttpResponse
from .models import Quote
def index(request):
if request.method == 'POST':
text = request.POST.get('text')
author = request.POST.get('author')
if text and author:
new_quote = Quote.objects.create(text=text, author=author)
# Render the new quote HTML
html = render_to_string('quoteapp/quote_item.html', {'quote': new_quote})
return HttpResponse(html)
quotes = Quote.objects.all()
return render(request, 'quoteapp/index.html', {'quotes': quotes})
У цьому погляді ми імпортуємо модель цитат і використовуємо її для розробки відповіді в index
функція. З request
Аргумент надає нам доступ до всієї інформації, яка нам потрібна від клієнта. Якщо метод є POST
ми збираємо новий Quote
Об'єкт і використання Quote.objects.create()
вставити його в базу даних. Як відповідь, ми надсилаємо лише розмітку для нової цитати, оскільки HTMX вставить її у список на передньому кінці.