网站运营工作具体做啥政务服务网站建设汇报

news/2025/9/23 22:38:12/文章来源:
网站运营工作具体做啥,政务服务网站建设汇报,泰安网站建设哪里找,儿童教育网站模板之前了解了#xff1a; 创建Django项目 数据库 模板 表格提交 admin管理页面 上面的功能模块允许我们做出一个具有互动性的站点#xff0c;但无法验证用户的身份。我们这次了解用户验证部分。通过用户验证#xff0c;我们可以根据用户的身份#xff0c;提供不同的服务。 …之前了解了 创建Django项目 数据库 模板 表格提交 admin管理页面 上面的功能模块允许我们做出一个具有互动性的站点但无法验证用户的身份。我们这次了解用户验证部分。通过用户验证我们可以根据用户的身份提供不同的服务。 一个Web应用的用户验证是它的基本组成部分。我们在使用一个应用时总是从“登录”开始到“登出”结束。另一方面用户验证又和网站安全、数据库安全息息相关。HTTP协议是无状态的但我们可以利用储存在客户端的cookie或者储存在服务器的session来记录用户的访问。  Django有管理用户的模块即django.contrib.auth。你可以在mysite/settings.py里看到这个功能模块已经注册在INSTALLED_APPS中。利用该模块你可以直接在逻辑层面管理用户不需要为用户建立模型也不需要手工去实现会话。 创建用户 你可以在admin页面直接看到用户管理的对话框即Users。从这里你可以在这里创建、删除和修改用户。点击Add增加用户daddy密码为daddyiscool。 在admin页面下我们还可以控制不同用户组对数据库的访问权限。我们可以在Groups中增加用户组设置用户组对数据库的访问权限并将用户加入到某个用户组中。 在这一章节中我们创立一个新的app即users。下文的模板和views.py都针对该app。 用户登录 我们建立一个简单的表格。用户通过该表格来提交登陆信息并在Django服务器上验证。如果用户名和密码正确那么登入用户。 我们首先增加一个登录表格 form roleform action/login methodpostlabelUsername/labelinput typetext nameusernamelabelPassword/labelinput namepassword typepasswordinput typesubmit valueSubmit/form 我们在views.py中定义处理函数user_login()来登入用户 # -*- coding: utf-8 -*- from django.shortcuts import render, redirect from django.core.context_processors import csrf from django.contrib.auth import *def user_login(request):loginif request.POST:username password username request.POST.get(username)password request.POST.get(password)user authenticate(usernameusername, passwordpassword)if user is not None and user.is_active:login(request, user)return redirect(/)ctx {}ctx.update(csrf(request))return render(request, login.html,ctx) 上面的authenticate()函数可以根据用户名和密码验证用户信息。而login()函数则将用户登入。它们来自于django.contrib.auth。 作为替换我们可以使用特别的form对象而不自行定义表格。这将让代码更简单而且提供一定的完整性检验。 登出 有时用户希望能销毁会话。我们可以提供一个登出的URL即/users/logout。登入用户访问该URL即可登出。在views.py中增加该URL的处理函数 # -*- coding: utf-8 -*- from django.shortcuts import redirectdef user_logout(request):logoutURL: /users/logoutlogout(request)return redirect(/) 我们修改urls.py让url对应user_logout()。访问http://127.0.0.1/users/logout就可以登出用户。 views.py中的用户 上面说明了如何登入和登出用户但还没有真正开始享受用户验证带来的好处。用户登陆的最终目的就是为了让服务器可以区别对待不同的用户。比如说有些内容只能让登陆用户看到有些内容则只能让特定登陆用户看到。我们下面将探索如何实现这些效果。 在Django中对用户身份的检验主要是在views.py中进行。views.py是连接模型和视图的中间层。HTTP请求会转给views.py中的对应处理函数处理并发回回复。在views.py的某个处理函数准备HTTP回复的过程中我们可以检验用户是否登陆。根据用户是否登陆我们可以给出不同的回复。最原始的方式是使用if式的选择结构 # -*- coding: utf-8 -*- from django.http import HttpResponsedef diff_response(request):if request.user.is_authenticated():content pmy dear user/pelse:content pyou wired stranger/preturn HttpResponse(content) 可以看到用户的登录信息包含在request.user中is_authenticated()方法用于判断用户是否登录如果用户没有登录那么该方法将返回false。该user对象属于contrib.auth.user类型还有其它属性可供使用比如 在Django中我们还可以利用装饰器根据用户的登录状况来决定views.py中处理函数的显示效果。相对于上面的if结构装饰器使用起来更加方便。下面的user_only()是views.py中的一个处理函数。 from django.contrib.auth.decorators import login_required from django.http import HttpResponselogin_required def user_only(request):return HttpResponse(pThis message is for logged in user only./p) 注意上面的装饰器login_required它是Django预设的装饰器。user_only()的回复结果只能被登录用户看到而未登录用户将被引导到其他页面。 Django中还有其它的装饰器用于修饰处理函数。相应的http回复只能被特殊的用户看到。比如user_passes_test允许的用户必须满足特定标准而这一标准是可以用户自定义的。比如下面在views.py中增添  from django.contrib.auth.decorators import user_passes_test from django.http import HttpResponse def name_check(user):return user.get_username() vameiuser_passes_test(name_check) def specific_user(request):return HttpResponse(pfor Vamei only/p) 装饰器带有一个参数该参数是一个函数对象name_check。当name_check返回真值即用户名为vamei时specific_user的结果才能被用户看到。 模板中的用户 进一步用户是否登陆这一信息也可以直接用于模板。比较原始的方式是把用户信息直接作为环境数据提交给模板。然而这并不是必须的。事实上Django为此提供了捷径我们可以直接在模板中调用用户信息。 {% if user.is_authenticated %}pWelcome, my genuine user, my true love./p {% else %}pSorry, not login, you are not yet my sweetheart. /p {% endif %} 不需要环境变量中定义我们就可以直接在模板中引用user。这里模板中调用了user的一个方法is_authenticated将根据用户的登录情况返回真假值。需要注意和正常的Python程序不同在Django模板中调用方法并不需要后面的括号。 用户注册 我们上面利用了admin管理页面来增加和删除用户。这是一种简便的方法但并不能用于一般的用户注册的情境。我们需要提供让用户自主注册的功能。这可以让站外用户提交自己的信息生成自己的账户并开始作为登陆用户使用网站。 用户注册的基本原理非常简单即建立一个提交用户信息的表格。表格中至少包括用户名和密码。相应的处理函数提取到这些信息后建立User对象并存入到数据库中。 我们可以利用Django中的UserCreationForm比较简洁的生成表格并在views.py中处理表格 from django.contrib.auth.forms import UserCreationForm from django.shortcuts import render, redirect from django.core.context_processors import csrfdef register(request): if request.method POST: form UserCreationForm(request.POST) if form.is_valid(): new_user form.save() return redirect(/) else:form UserCreationForm()ctx {form: form}ctx.update(csrf(request)) return render(request, register.html, ctx) 相应的模板register.html如下 form action methodpost{% csrf_token %}{{ form.as_p }}input typesubmit valueRegister /form

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914114.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

东莞市品牌网站建设道滘仿做网站

当我们须要调用系统的命令的时候,最先考虑的os模块。用os.system()和os.popen()来进行操作。可是这两个命令过于简单,不能完毕一些复杂的操作,如给执行的命令提供输入或者读取命令的输出,推断该命令的执行状态,管理多个…

沈阳制作公司网站和app自适应网站m域名必须做301

linux入门-常用命令的使用对于命令行的接触,最开始是window下的cmd,比如查看电脑ip地址、进入某一个文件夹、下载npm模块等等window cmdwindow ipconfig对于习惯了window桌面操作系统的用户来说,其实是比较少接触到命令行的,而在l…

设计人才网站做百度移动网站优

谈到索引,大家并不陌生。索引本身是一种数据结构,存在的目的主要是为了缩短数据检索的时间,最大程度减少磁盘 IO。任何有数据的场景几乎都有索引,比如手机通讯录、文件系统(ext4xfsfs)、数据库系统(MySQLOracle)。数据库系统和文件…

莱芜网络公司网站网站不备案打不开

青少年编程Python编程等级考试二级真题解析(选择题+判断题+编程题) 2023年9月 一、选择题(共25题,共50分) 以下代码运行结果是?( ) A. 宸宸 B. 杭杭 C. 玉玉 D. 州州 答案选:A 考点分析:考察python 列表操作 jxw=yyh[2][0],jxw的值是“拱宸桥”,jxw[1]的值是“宸”…

网上做衣服的网站关于做网站的书

1.农作物遥感分类 1.1 利用多时相环境星 CCD 数据作物分类识别实验 采用支持向量机分类器进行基于象素遥感影像分类方法。在分类过程中,分别对不同日期的单景环境星数据以及不同日期环境星数据的组合进行分类,以评价环境星在作物分类中的应用潜力&#x…

从软件开发公司到用户体验设计公司:如何实现全链路数字化产品服务

从软件开发公司到用户体验设计公司:如何实现全链路数字化产品服务在过去十年里,很多企业数字化项目的核心诉求是“软件要能跑”。因此,软件开发公司的主要价值在于实现业务逻辑与技术落地。然而,随着竞争加剧与用户…

欧派网站谁做的河北城乡建设官网站

我需要使用Guzzle检查数据库中的很多项目.例如,项目数量为2000-5000.将其全部加载到单个数组中太多了,因此我想将其分成多个块:SELECT * FROM items LIMIT100.当最后一个项目发送到Guzzle时,则请求下一个100个项目.在“已满”处理程序中,我应该知道哪个项目得到了响…

9.23总结

今天是9.23,今天星期二,上午上了一上午的工程实训课,我们了解了激光的种类和雕刻的技术,并且自己动手雕刻了一些东西。体验到了自己动手的快乐。中午写了一会儿代码,然后睡了午觉,到下午该上英语课的时候,才睡醒…

日志|力扣|不同路径|最小路径和|动态规划|Javase|IO|File|Javaweb

力扣 62.不同路径思路:自顶向下,dp[i][j]表示(0,0)->(i,j)的路径和,dp数组就是当前格子可走的路径数也就是左边和右边的dp[i][j] = dp[i-1][j] + dp[i][j-1];,迭代填满二维数组,最后一个就是答案。点击查看…

如何建立 5 μm 精度的视觉检测?不仅仅是相机的事

如何建立 5 μm 精度的视觉检测?不仅仅是相机的事pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas"…

网站服务名词解释wordpress 用户 新增

PyTorch深度学习总结 第一章 Pytorch中张量(Tensor)的生成 文章目录 PyTorch深度学习总结一、什么是PyTorch?二、张量(Tensor)1、张量的数据类型2、张量生成和信息获取 总结 一、什么是PyTorch? PyTorch是一个开源的深度学习框架,基于Python…

网站建设类型有哪些小程序定制开发多少费用

前言 element提供的的message消息提示用确实方便直接代码就搞定。但是在特定的场景并不适用 点击某一个点位提示用户点击了或者websocket推送提示用户来信息了(这种提示用户场景) 如果有很多推送信息来,或者用户一直点击。这是屏幕会一直弹…

网站做受网站网站型建设模板

这是DevOps系列的第六节,我们开始安装DockerDebian 上安装可以基于最新debian10的发行版,我现在还用着debian9,不过随后,我会发出Windows / macOs / Ubuntu的参考。安装如果您已经是root用户,则无需使用sudo1、卸载任何…

单页式网站 seo深圳平台推广

1、OpenGL 基础知识 1.1 OpenGL 简介 OpenGL(Open Graphics Library)是图形领域的工业标准,是一套跨编程语言、跨平台、专业的图形编程(软件)接口。它用于二维、三维图像,是一个功能强大,调用…

设计类型的网站家装设计师用什么软件画图

数据分类 数据分为:静态数据、动态数据。 静态数据 静态数据是指一些永久性的数据。一般是以文件的形式存储在硬盘上,比如文档、照片、视频等文件。 电脑关闭后,静态数据仍然还在。只要不主动删掉数据或者硬盘没损坏,这些数据…

做评测好的视频网站有哪些用模版做网站的好处和坏处

操作环境: MATLAB 2022a 1、算法描述 1. DS-CDMA系统 DS-CDMA (Direct Sequence Code Division Multiple Access) 是一种多址接入技术,其基本思想是使用伪随机码序列来调制发送信号。DS-CDMA的特点是所有用户在同一频率上同时发送和接收信息&#xf…

函数 cmd_info_change_cur_model_group

预定义的宏 // 多唤醒词网络切换 // 多唤醒网络切换使能 0:不使能;1:使能 #define MULTI_WAKE_UP_NET_SWITCH 0 // 切换唤醒词ID #define SWITCH_WAKEWORD_ID 0 // 唤醒词网络总数 #define WAKE_UP_NET_TOTAL 0…

一个基于 .NET 开源、简易、轻量级的进销存管理系统 - 教程

一个基于 .NET 开源、简易、轻量级的进销存管理系统 - 教程2025-09-23 22:26 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !importan…

线程--相关概念、两种创建线程的方式

线程基础 一、线程相关概念 程序:是为完成特定任务、用某种语言编写的一组指令的集合。简单的说:就是我们写的代码 进程:进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为进程分配内存空间…

昌平建设网站万网域名备案查询

环境: Wiondws XP sp3 工具: ollydbg,ExeInfo PE 查壳: 用Exeinfo PE 查壳,没有壳,是VB写的 过程: 一:随便输入一个serial,得到一个错误信息消息框,OD载入…