Django print() не работает в терминале
В настоящее время я делаю проект Django с sqlite3 с методом ORM.
Я не могу отладить, так как print() не работает в терминале, даже если я поместил функцию print() в views.py.
Я проверил в оболочке python, кверисет работает.
В views.py
from django.shortcuts import render,redirect
from .models import BookBoardModel
def index(request):
all_books = BookBoardModel.objects.all()
print(all_books)
for item in all_books:
print(item.title)
context = {'all_books': all_books}
return render(request, 'category_books_page/index.html', context)
Терминал отображается с предупреждающим знаком и не выдает print():
Из-за этого переменные all_books
не будут правильно отображены в index.html, что не приведет к созданию объектов в index.html
В index.html
{{all_books}} It is not showing at all :(
В category_books_page.urls.py
from django.urls import path
from django.contrib import admin
from . import views
urlpatterns = [
path('', views.index, name='bookHome'),
]
В config.urls.py
from django.contrib import admin
from django.urls import path, include
from signup_page import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('default_page.urls')),
path('category_books_page/', include('category_books_page.urls')),
path('api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]
Вы можете попробовать в шаблоне:
{% for book in all_books %}
{{ book.title }}
{% endfor %}
Попробуйте перезапустить проект runserver