python - 试图让我的 views.py 和 urls.py 正常工作
问题描述
我目前正在尝试让我创建的数据库显示在我的 Djnago 服务器上,但是我的 FruitModel 不断收到错误消息,说没有对象,但是我已经使用“record = FruitModel.objects”在我的数据库中为 FruitModel 创建了对象。 create(name='banana', price='4.00')。当我加载服务器时,我的 url 也无法显示错误。这是 Views.py 和 urls.py 的代码:
(views.py code)
from django.shortcuts import render, redirect
from catalog.models import FruitModel
from catalog.forms import FruitForm
from django.http import HttpResponse
# Create your views here.
def FruitView(request):
fruit = FruitModel.objects.all()
html = ''
for fruits in fruit:
var = f'<li> {fruits.name} </li><br>'
html = html + var
return HttpResponse(html,status = 200)
def FruitIDView(request,name):
fruits = FruitModel.objects.get(name = f'{fruits.name}')
html = f'<h2>{fruits.name}</h2><br>'
return HttpResponse(html, status=200)
(urls.py code)
from django.contrib import admin
from django.urls import path
from django.conf.urls import url
from catalog import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^FruitView/?$', views.FruitView),
]
解决方案
您需要进行以下更改:
#urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^FruitView/?$', views.FruitView),
path('FruitIDView/<str:naam>', views.FruitIDView), #use path instead of url
]
#models.py (if not created)
class FruitModel(models.Model):
name = models.CharField(max_length=200,null=True,blank=True)
price = models.IntegerField()
#views.py
def FruitView(request):
fruit = FruitModel.objects.all()
html = ''
for fruits in fruit:
var = f'<li> {fruits.name} </li><br>'
html = html + var
return HttpResponse(html,status = 200)
def FruitIDView(request,naam):
fruits = FruitModel.objects.get(name = naam) #how can you use fruits.name here
html = f'<h2>{fruits.name}</h2><br>'
return HttpResponse(html, status=200)
#admin.py (if not created)
from .models import *
# Register your models here.
admin.site.register(FruitModel)
推荐阅读
- java - Saving a Dictionary to .txt file in Scala
- python - 如何在不使用装饰器的情况下运行一次函数?
- javascript - 传单总是在点击事件后居中地图
- java - Mockito 可以捕获实现中声明的变量的参数吗?
- reactjs - React Jest/React-testing-Library 路由更改无法正常工作
- video - Prestashop 1.7 主页上的视频自动播放
- html - CSS 不应用于打印
- java - 执行 FreeMarker 时,以下已评估为 null 或缺失
- angular - 移动设备两侧的 Flex 布局排水沟
- jquery - 如何在选定的表格行中重新排列追加表格行和表格数据