1.404 page not found(找不到对应的页面) 2.500 server error(服务器错误) 3.400 bad request(无效的请求) 4.403 HTTP forbidden...(HTTP禁止访问,权限不足) 5.200 OK (请求成功) 重新定义404模板: book/urls.py from django.urls import path from . import views...from django.conf.urls import handler404 app_name ="book" urlpatterns = [ path('',views.index,name...="index"), ] handler404=views.page_not_found book/views.py from django.http import HttpResponse from...django.shortcuts import render,redirect,reverse from django.urls import resolve # Create your views
因为django自带的auth_user关联了我自己创建的user表,当我删掉库重新创建,然后新建superuser的时候,出现的错误 解决方法: migrate --fake-initial (后面再研究到底是什么问题...,应该是库删的不干净) 参考地址:https://stackoverflow.com/questions/33847110/django-registration-1048-column-last-login-cannot-be-null
创建一个 Django 项目及应用 django-admin startproject mysite cd mysite # 手动创建一个 templates 文件夹用来保存 html 文件 mkdir...templates python manage.py startapp blog 修改 urls.py 文件 from django.contrib import admin from django.urls...[ path('admin/', admin.site.urls), path('cur_time', views.cur_time), ] 修改 views.py 文件 from django.shortcuts...datetime.datetime.now() return render(request, "cur_time.html", {"now":times}) 修改 settings.py 文件, 把上面手动创建的
添加路由 配置视图函数 在浏览器中请求数据 redirect 案例 老规矩:添加路由 配置视图函数 在浏览器中请求数据 官网 简介 是一个为完美主义者设计的web框架 The web framework...encoding 编码报错 一个pycharm窗口只能有一个项目,不要把多个项目项目放在一个窗口下 注意 django 的版本问题......命令行启动 Django 项目 要切到项目根目录下(不然找不到这个 manage.py 文件) python manage.py runserver ? ?...一定要把错误的给删掉,否则下一次还是默认使用第一个的 ?...返回html页面并且能够给该页面传值 redirect: 重定向,返回指定的页面html(浏览器可以看到302状态码) 强调:每新添加一个功能都应该在路由文件 urls.py中添加一个路由与视图的对应关系
views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串 参数:可选的要传递给视图函数的默认参数(字典形式) 别名:一个可选的name参数 正则表达式详解 基本配置 from...如果在settings.py中设置了 APPEND_SLASH=False,此时我们再请求 http://www.example.com/blog 时就会提示找不到页面。...传递额外的参数给视图函数(了解) URLconfs 具有一个钩子,让你传递一个Python 字典作为额外的参数传递给视图函数。...django.conf.urls.url() 函数可以接收一个可选的第三个参数,它是一个字典,表示想要传递给视图函数的额外关键字参数。...咱们简单来说就是可以给我们的URL匹配规则起个名字,一个URL匹配模式起一个名字。 这样我们以后就不需要写死URL代码了,只需要通过名字来调用当前的URL。
,用来匹配相关的路径; views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串。...如果在settings.py中设置了 APPEND_SLASH=False,此时我们再请求 http://www.example.com/blog 时就会提示找不到页面。...传递额外的参数给视图函数 URLconfs 具有一个钩子,让你传递一个Python 字典作为额外的参数传递给视图函数。...django.conf.urls.url() 函数可以接收一个可选的第三个参数,它是一个字典,表示想要传递给视图函数的额外关键字参数。...咱们简单来说就是可以给我们的URL匹配规则起个名字,一个URL匹配模式起一个名字。 这样我们以后就不需要写死URL代码了,只需要通过名字来调用当前的URL。
第一步:在Django项目的App文件夹下创建static文件夹和templates文件夹,注意文件夹名不要写错哇,不然后面跑项目的时候可能找不到对应的网页文件。...# 默认会有参数request def index1(request): return HttpResponse("欢迎使用Django") 需要注意的是,这一个视图函数的参数request...响应html页面 第一步:首先在urls.py里面配置url到视图函数的对应关系。 第二步:然后在views.py里面编写视图函数。..."demo.html") 响应html页面的时候,需要使用render()函数,其第一个参数是request对象,第二个参数是你想要响应的html页面文件名称,第三个参数可以是你后端想要传递给前端页面的信息...也就是说,比如浏览器给Django发送请求,想要重定向到我的博客,那么浏览器就会把我的博客url返回给浏览器,然后浏览器再去自己发送请求访问我的博客,而不是Django给我的博客发送请求后,再把内容返回给浏览器
django-admin makemessages -l zh_Hans -l en 生成对应文件 我们需要在对应的文件中,给这些需要翻译的键添加值 ( msgid (message id)是键,...en 文件 ( 这里的en 是之前所设置的名字,需要与setting中语言配置元组中第一个数据一样,此时我们需要都将中文翻译成英文,注意!!不进行翻译会默认使用其他语言!...第一个是对应语言,第二个是字符串表达 ('en', _('English')), ('zh-hans', _('Simplified Chinese')), ] # 用于存放django.po...官方文档的国家化项目中也是这么干的 这里需要添加路由url i18n_patterns from django.contrib import admin from django.urls import...在切换语言from表单中,我们所提交的表单路径set_language 是我们所导入i18n url 路径所提供的,提交的language.code能够对应到我们所设置的语言就能切换语言。
首先 django 是众多 web 框架中的其中一个,用它可以快速的开发出一个网站,它提供了路由(url)、视图(view)、模型(model),你只要根据它的框架规则编写代码就可以快速开发一个网站。...当你在某个网站,点击某个按钮(其实是一个带链接的a标签),就会跳转到另外一个网站页面或者实现某些业务功能。...开发一个比较简单的网站,说白了就是对数据库增删改查操作,使用 django 框架时,你只要在 settings.py(框架的一些基本配置,比如数据库连接,地区时间,admin语言设置等等) urls.py...所以想学会 django 的基本使用,你需要知道 model 模型的设计,url 路由的编写规则,view 视图函数的编写 业务逻辑怎么实现。...还有要熟悉 http 协议,常见的http 状态码 200 请求正常 404 页面找不到 500 服务器错误(你代码写的有问题) 常见的网络请求方式 GET (查询数据使用) POST (新增数据
当我们刚刚在浏览器中输入 http://127.0.0.1:8000/admin/ 之后,浏览器显示出了后台管理的登录页面,那有没有想过这个服务器是怎么给我们找到这个页面并返回呢?.../admin/ 是我们想要请求的页面,服务器在收到这个请求之后,就一定对应着一个处理动作,这个处理动作就是帮我们产生页面内容并返回回来,这个过程在 Django 中是由 视图 来做的。...在 Django 中使用视图,一般需要进行两步操作: 定义视图 配置URL 运行环境 Python 3.9 Django 3.1.2 Django视图 基于函数的视图 视图函数的必须有一个参数,一般叫...,如果所有的 URL配置都没有匹配成功,则返回 404 错误。...return HttpResponse("POST请求 - 图书信息页") 配置URL 因为 Django 的 URL解析器 希望将请求和关联的参数发送给可调用的函数而不是类,所以基于类的视图具有一个
当用户想要发表评论时,他找到我们给他展示的一个评论表单(我们已经看到在文章详情页的底部就有一个评论表单,你将看到表单呈现给我们的样子),然后根据表单的要求填写相应的数据。...我们知道每一个 URL 对应着一个 Django 的视图函数,于是 Django 调用这个视图函数,我们在视图函数中写上处理用户通过表单提交上来的数据的代码,比如验证数据的合法性并且保存数据到数据库中,...关于表单进一步的解释 Django 为什么要给我们提供一个表单类呢?为了便于理解,我们可以把表单和前面讲过的 Django ORM 系统做类比。...# 这里我们使用了 Django 提供的一个快捷函数 get_object_or_404, # 这个函数的作用是当获取的文章(Post)存在时,则获取;否则返回 404 页面给用户。...我们可以看到评论表单和评论列表是位于文章详情页面的,处理文章详情页面的视图函数是 detail,相应地需要更新 detail,让它生成表单和从数据库获取文章对应的评论列表数据,然后传递给模板显示: blog
错误报告 当你运行一个公开站点时,你应该始终关闭DEBUG 设置。这会使你的服务器运行得更快,也会防止恶意用户看到由错误页面展示的一些应用细节。...但是,运行在 DEBUG为False的情况下,你不会看到你的站点所生成的错误 – 每个人都只能看到公开的错误页面。你需要跟踪部署的站点上的错误,所以可以配置Django来生成带有错误细节的报告。...另见 服务器错误邮件使用日志框架来发送,所以你可以通过 自定义你的日志配置自定义这一行为。 404错误 也可以配置Django来发送关于死链的邮件(404”找不到页面”错误)。...sensitive_variables(*variables)[source] 如果你的代码中一个函数(视图或者常规的回调)使用可能含有敏感信息的局部变量,你可能需要使用sensitive_variables...所有POST参数按顺序被过滤出特定django.contrib.auth.views 视图的错误报告(login, password_reset_confirm, password_change, add_view
文件,百度上面真的找不到想找的,谷歌一下问题迎刃而解。...有样式的话,跳过,没有的话,解决: 右键审查元素或者firebug,调到控制台窗口,刷新页面,发现css错误,点开可见找不到路径,所以导致没有样式加载。...简单的后端我们处理完了,现在该去看看我们前端如何了。 从Django的角度看,一个页面具有三个典型的组件: 一个模板(template):模板负责把传递进来的信息显示出来。...一个视图(view):视图负责从数据库获取需要显示的信息。 一个URL模式:它负责把收到的请求和你的视图函数匹配,有时候也会向视图传递一些参数。...pycharm,默认页面是新建工程,选择django,输入工程名,app名即可。
我们知道每一个 URL 对应着一个 django 的视图函数,于是 django 调用这个视图函数,我们在视图函数中写上处理用户通过表单提交上来的数据的代码,比如验证数据的合法性并且保存数据到数据库中,...关于表单进一步的解释 django 为什么要给我们提供一个表单类呢?为了便于理解,我们可以把表单和前面讲过的 django ORM 系统做类比。...return redirect(post) # 检查到数据不合法,我们渲染一个预览页面,用于展示表单的错误。...如果用户提交的数据合法,我们就将评论数据保存到数据库,否则说明用户提交的表单包含错误,我们将渲染一个 preview.html 页面,来展示表单中的错误,以便用户修改后重新提交。...同样的,如果评论失败了,也发送一条消息: # 检查到数据不合法,我们渲染一个预览页面,用于展示表单的错误。
视图 1、视图的功能 接受请求,和模板页(T)、models进行交互,并返回应答。 可以返回一个内容HttpResponse,也可以重定向redirect。...2、视图的使用 2.1必须有一个request参数,来接收服务器返回给我们的内容, 比如在登陆的时候的账号密码发送过来,我们就是用request这个参数来接收。...4、当我们浏览器访问一个不存在的页面会报错404,当我们模板有错误的时候会报错500, 并且都会提示哪里有错误,这在项目上线后是不允许的,怎么让他只显示404或者500,不会提示具体的错误信息?...当然在开发的时候还是True好点。 4.1当做了上面一系列修改后,错误页面就只会显示Not Found,这种简单的信息。...如果你认为这个404页面不好看,或者500页面不好看,我们只需要在模板(Templates)下创建404.html 或者500.html,当找不到页面的时候,就会自动访问404.html,无需其他配置。
settings.py: 这是一个配置文件,里面有关于语言、时区、安装的app声明等等信息; urls.py: 这个文件里指明了在访问一个页面时要调用的视图啊等的映射,确保在访问时可以正确定位到你要实现的功能...views.py 这里的每个文件的作用可以参考文档,重点说一下重点blog/views.py这个文件,他是一个视图文件,等你回来我们要显示的Hello World就要在这个文件里实现。...,不然映射不正确,在访问网页的时候回出现404的错误,具体如下: from django.conf.urls import url from django.contrib import admin from...admin的导入,这是默认的映射,你也可以去掉,但是他的作用后面我们访问页面的时候再说。...但此时有个问题,会发现在Pycharm中会出现红色的错误提示,很郁闷有没有???好吧,我们就当这是Pycharm的一个bug好了吧,强迫症就先忍忍吧!
(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求,其示意图如下所示: ?...一般是用户通过浏览器向我们的服务器发起一个请求(request),这个请求回去访问视图函数,(如果不涉及到数据调用,那么这个时候视图函数返回一个模板也就是一个网页给用户),视图函数调用模型,模型去数据库查找数据...直接views.index即可 必须导入blog应用的views模块,否则它找不到对应的视图函数 from django.contrib import adminfrom django.urls import...页面输出: ? 视图函数,必须返回一个HttpResponse对象。HttpResponse是一个对象,对象里面,放字符串。...访问url: http://127.0.0.1:8000/login/ 输入一个错误的密码,点击提交 ?
URL配置 URL配置就像Django所支撑网站的目录.它的本质是URL与要为该URL调用的视图之间的映射表.你就是以这种方式告诉Django,对于哪个URL调用的这段代码.... (2) views视图函数: 一个可调用的对象,通常为一个视图函数或一个指定视图函数路径的字符串 (3) 参数: 可选的要传递给视图函数的默认参数(字典形式) (4)别名: 一个可选的name...如果在settings.py中设置了 APPEND_SLASH=False,此时我们再请求 http://www.example.com/blog 时就会提示找不到页面。 三....四.命名URL(别名) 和 URL的反向解析 简单来说就是可以给我们的URL匹配规则起个名字,一个URL匹配模式起一个名字。...在某些场景中,一个视图是通用的,所以在URL 和视图之间存在多对一的关系。对于这些情况,当反查URL 时,只有视图的名字还不够。
/article/details/50311077 django页面报错: ?...一般这个错误的原因是django中得到查询对象用的方法是get方法,改成filter方法就可以了,因为get方法只会得到一个对象,而filter方法会根据查询的条件如果有多个对象就返回多个对象。...教训: 找不到json的dumps属性。...—————————————————————————————————————————————————————— django定义路由信息的时候末尾一定要加上/,否则有可能找不到页面!血的教训!...="blog")), 重定向的话就需要在视图函数里面引入如下内容: from django.shortcuts import render, redirect, reverse reverse是反解析
views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串 参数:可选的要传递给视图函数的默认参数(字典形式) 别名:一个可选的name参数 二 正则表达式详解 基本配置 from...如果在settings.py中设置了 APPEND_SLASH=False,此时我们再请求 http://www.example.com/blog 时就会提示找不到页面。...django.conf.urls.url() 函数可以接收一个可选的第三个参数,它是一个字典,表示想要传递给视图函数的额外关键字参数。 ...在使用Django 项目时,一个常见的需求是获得URL的最终形式,以用于嵌入到生成的内容中(视图中和显示给用户的URL等)或者用于处理服务器端的导航(重定向等)。 ...咱们简单来说就是可以给我们的URL匹配规则起个名字,一个URL匹配模式起一个名字。 这样我们以后就不需要写死URL代码了,只需要通过名字来调用当前的URL。
领取专属 10元无门槛券
手把手带您无忧上云