当前位置: 首页 > news >正文

Python 从0开始 一步步基于Django创建项目(11)注册新用户

1、修改C:\D\Python\Python310\study\snap_gram\users路径下的urls.py

添加‘注册新用户’URL。

#注册新用户
path('register/',views.register,name='register'),

2、修改C:\D\Python\Python310\study\snap_gram\users路径下的views.py

编写URL对应的视图函数register。

def register(request):if request.method != 'POST':form = UserCreationForm()else:# 处理填写好的表单form = UserCreationForm(data=request.POST)if form.is_valid():new_user = form.save()# 让用户自动登录,再重定向到主页。login(request,new_user)return redirect('city_infos:index')# 显示空表单或指出表单无效。context = {'form':form}return render(request,'registration/register.html', context)

该函数中使用了UserCreationForm表单类,以及login()方法。需要再文件中import这两项内容。

from django.contrib.auth import login
from django.contrib.auth.forms import UserCreationForm

3、新建C:\D\Python\Python310\study\snap_gram\users\templates\registration路径下的register.html

<!-- 一个应用程序中的模板可继承另一个应用程序中的模板 -->
{% extends "city_infos/base.html" %}{% block content %}<!-- 对提交的注册信息进行处理 --><form method="post" action="{% url 'users:register' %}">{% csrf_token %}{{ form.as_p }}<!-- 显示表单内容 --><button name="submit">注册</button><!-- next:登录后重定向 --><input type="hidden" name="next"value="{% url 'city_infos:index' %}" /></form>
{% endblock content %}

4、修改C:\D\Python\Python310\study\snap_gram\city_infos\templates\city_infos路径下的base.html

添加‘注册新用户’链接。

{% if user.is_authenticated %}Hello,{{user.username}}.<a href="{% url 'users:custom_logout' %}">注销</a>
{% else %}<a href="{% url 'users:register' %}">注册</a><a href="{% url 'users:login' %}">登录</a>
{% endif %}

相关文章:

Python 从0开始 一步步基于Django创建项目(11)注册新用户

1、修改C:\D\Python\Python310\study\snap_gram\users路径下的urls.py 添加‘注册新用户’URL。 #注册新用户 path(register/,views.register,nameregister), 2、修改C:\D\Python\Python310\study\snap_gram\users路径下的views.py 编写URL对应的视图函数register。 def r…...

银行监管报送系统介绍(十二):非居民金融账户涉税信息报送

国家税务总局、财政部、中国人民银行、中国银行业监督管理委员会、中国证券监督管理委员会、国家金融监督管理总局2017年5月9日发布、2017年7月1日起施行的《非居民金融账户涉税信息尽职调查管理办法》。 一、《管理办法》出台的背景是什么&#xff1f;   受二十国集团&…...

土壤有机质空间分布数据

土壤有机质&#xff08;soil organic matter&#xff09;是土壤中含碳有机化合物的总称&#xff0c;包括土壤固有的和外部加入的所有动植物残体及其分解产物和合成产物。主要来源于动植物及微生物残体&#xff0c;可分为腐殖质和非腐殖物质。一般占土壤固相总重的10%以下&#…...

Unity图集编辑器

图集编辑器 欢迎使用图集编辑器新的改变编辑器图片 欢迎使用图集编辑器 Unity图集操作很是费劲 无法批量删除和添加图集中的图片 新的改变 自己写了一个图集编辑器 客&#xff1a; 支持批量删除 左键点击图片代表选中 右键点击图标定位到资产支持批量添加 选中图片拖拽到编…...

【JS笔记】JavaScript语法 《基础+重点》 知识内容,快速上手(六)

面向对象OOP 首先&#xff0c;我们要明确&#xff0c;面向对象不是语法&#xff0c;是一个思想&#xff0c;是一种 编程模式面向&#xff1a; 面&#xff08;脸&#xff09;&#xff0c;向&#xff08;朝着&#xff09;面向过程&#xff1a; 脸朝着过程 》 关注着过程的编程模…...

hbase启动错误-local host is“master:XXXX“ destination is:master

博主的安装前提&#xff1a; zookeeper安装完成&#xff0c;且启动成功 hdfs高可用安装&#xff0c;yarn高可用安装&#xff0c;且启动成功 报错原因&#xff1a;端口配置不对 解决方案&#xff1a; 输入&#xff1a;hdfs getconf -confKey fs.default.name 然后把相应的…...

基于SpringBoot的“招生管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“招生管理系统”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 系统首页界面图 学生注册界面图 …...

Chinese-LLaMA-Alpaca-2模型量化部署测试

简介 Chinese-LLaMA-Alpaca-2基于Meta发布的可商用大模型Llama-2开发, 是中文LLaMA&Alpaca大模型的第二期项目. 量化 模型的下载还是应用脚本 bash hfd.sh hfl/chinese-alpaca-2-13b --tool aria2c -x 8应用llama.cpp进行量化, 主要参考该教程. 其中比较折腾的是与BLAS…...

flutter 打包成web应用后怎么通过url跳转页面

在 Flutter 中&#xff0c;如果你想要在打包成 Web 应用后通过 URL 跳转页面&#xff0c;你可以利用 Flutter 提供的路由导航系统和 URL 策略。以下是具体步骤&#xff1a; 1. 配置路由 在 Flutter 应用中定义路由&#xff0c;一种简单的方式是使用 MaterialApp 构造器的 rou…...

【设计模式】中介者模式的应用

文章目录 1.概述2.中介者模式的适用场景2.1.用户界面事件2.2.分布式架构多模块通信 3.总结 1.概述 中介者模式&#xff08;Mediator Pattern&#xff09;是一种行为型设计模式&#xff0c;它用于解决对象间复杂、过度耦合的问题。当多个对象&#xff08;一般是两个以上的对象&…...

【微服务篇】分布式事务方案以及原理详解

分布式事务是指事务参与者、资源服务器、事务管理器分布在不同的分布式系统的多个节点之上的事务。在微服务架构、大型分布式系统和云计算等环境中&#xff0c;由于系统间调用和资源访问的复杂性&#xff0c;分布式事务变得尤为重要。 应用场景 跨系统交易&#xff1a;当交易…...

String 类的常用方法都有那些?

String 类在 Java 中是一个非常重要的类&#xff0c;用于处理文本数据。它提供了许多方法来操作字符串。以下是一些 String 类的常用方法&#xff1a; 构造方法 String(): 创建一个新的空字符串对象。String(byte[] bytes): 使用指定的字节数组来创建一个新的 String 对象。S…...

用XMLHttpRequest发送和接收JSON数据

百度的AI回答了一个案例&#xff1a; var xhr new XMLHttpRequest(); var url "your_endpoint_url"; // 替换为你的API端点 var data JSON.stringify({key1: "value1",key2: "value2" });xhr.open("POST", url, true); xhr.setReq…...

华为云使用指南02

5.​​使用GitLab进行团队及项目管理​​ GitLab旨在帮助团队进行项目开发协作&#xff0c;为软件开发和运营生命周期提供了一个完整的DevOps方案。GitLab功能包括&#xff1a;项目源码的管理、计划、创建、验证、集成、发布、配置、监视和保护应用程序等。该镜像基于CentOS操…...

halcon目标检测标注保存

* 创建一个新的字典 create_dict(ObjectDictionary) * 类别名称列表和对应的ID列表 class_names : [Defect1,Defect2,Defect3,Defect4,Defect5,Defect6,Defect7,Defect8,Defect9,Defect10,Defect11,Defect12,Defect13,Defect14,Defect15,Defect16,Defect17,Defect18] class_id…...

Python图像处理——计算机视觉中常用的图像预处理

概述 在计算机视觉项目中&#xff0c;使用样本时经常会遇到图像样本不统一的问题&#xff0c;比如图像质量&#xff0c;并非所有的图像都具有相同的质量水平。在开始训练模型或运行算法之前&#xff0c;通常需要对图像进行预处理&#xff0c;以确保获得最佳的结果。图像预处理…...

编译安装飞桨fastdeploy@FreeBSD(失败)

FastDeploy是一款全场景、易用灵活、极致高效的AI推理部署工具&#xff0c; 支持云边端部署。提供超过 &#x1f525;160 Text&#xff0c;Vision&#xff0c; Speech和跨模态模型&#x1f4e6;开箱即用的部署体验&#xff0c;并实现&#x1f51a;端到端的推理性能优化。包括 物…...

java组合总和(力扣Leetcode39)

组合总和 力扣原题链接 问题描述 给定一个无重复元素的整数数组 candidates 和一个目标整数 target&#xff0c;找出 candidates 中可以使数字和为目标数 target 的所有不同组合&#xff0c;并以列表形式返回。你可以按任意顺序返回这些组合。 示例 示例 1&#xff1a; 输…...

ZK友好代数哈希函数安全倡议

1. 引言 前序博客&#xff1a; ZKP中的哈希函数如何选择ZK-friendly 哈希函数&#xff1f;snark/stark-friendly hash函数Anemoi Permutation和Jive Compression模式&#xff1a;高效的ZK友好的哈希函数Tip5&#xff1a;针对Recursive STARK的哈希函数 随着Incrementally Ve…...

VMware vSAN OSA存储策略 - 基于虚拟机的分布式对象存储

简介 博客&#xff1a;https://songxwn.com/ 存储策略 (Storage Policy) 是管理员定义的一组规则&#xff0c;这组规则定义了数据对象在 vSAN 存储上是如何保存的&#xff0c;存储策略定义了数据存储的可靠性、访问性能等特性。vSAN 提供了基于存储策略的存储管理 SPBM (Stor…...

Cursor聊天数据恢复工具:原理、实操与避坑指南

1. 项目概述&#xff1a;数据恢复的“后悔药”在数字创作的世界里&#xff0c;我们与工具的交互正变得越来越智能和复杂。Cursor&#xff0c;这款集成了AI辅助编程能力的编辑器&#xff0c;已经成为了许多开发者和技术写作者的主力工具。它不仅仅是写代码&#xff0c;更是一个集…...

ARM与中科创达物联网加速器:一站式平台如何重塑产品开发

1. 项目概述&#xff1a;ARM与中科创达的物联网生态加速器2015年&#xff0c;半导体IP巨头ARM与总部位于北京的中科创达&#xff08;Thundersoft&#xff09;联合宣布&#xff0c;将在中国建立“ARM创新生态加速器”。这个消息在当时可能只是科技新闻版块的一则快讯&#xff0c…...

保姆级教程:用Python复现红外小目标检测的LCM算法(附完整代码)

从零实现红外小目标检测&#xff1a;LCM算法Python实战指南 在计算机视觉领域&#xff0c;红外小目标检测一直是颇具挑战性的任务。不同于常规物体检测&#xff0c;红外图像中的目标往往只有几个像素大小&#xff0c;缺乏纹理和形状特征。传统基于深度学习的方法在这种场景下常…...

告别JSON臃肿:手把手教你用MessagePack为C++微服务瘦身(附性能对比)

告别JSON臃肿&#xff1a;手把手教你用MessagePack为C微服务瘦身&#xff08;附性能对比&#xff09; 在当今高性能后端服务开发中&#xff0c;微服务架构已成为主流选择。然而&#xff0c;随着服务规模的扩大&#xff0c;服务间通信的数据量急剧增长&#xff0c;传统的JSON序列…...

HBM高带宽内存:从立体堆叠到2.5D封装的性能革命

1. 从平面到立体&#xff1a;HBM如何重塑内存性能天花板在半导体行业里&#xff0c;我们常把“摩尔定律”挂在嘴边&#xff0c;仿佛性能提升的唯一路径就是晶体管越做越小。但大约十年前&#xff0c;当工艺微缩的红利开始放缓&#xff0c;功耗墙和信号完整性问题日益严峻时&…...

3步自动化优化:智能管理Cursor AI开发环境的革命性方案

3步自动化优化&#xff1a;智能管理Cursor AI开发环境的革命性方案 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your tr…...

【NotebookLM NLP辅助天花板级用法】:谷歌内部未公开的3类Prompt架构+2个隐藏API调用技巧

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM NLP任务辅助全景概览 NotebookLM 是 Google 推出的基于用户自有文档的实验性 AI 助手&#xff0c;专为研究者与工程师设计&#xff0c;其核心能力在于对上传文本进行深度语义理解与上下文感…...

企业真正缺的不是模型,而是“AI 协作系统”

过去两年&#xff0c;大模型的发展速度远远超出了很多人的预期。 模型越来越强&#xff0c;推理成本越来越低&#xff0c;开源生态也越来越成熟。 很多企业因此开始接入 AI&#xff0c;希望通过大模型提升效率。 但真正进入业务阶段后&#xff0c;一个问题开始越来越明显&am…...

如何用ChatLaw构建你的专属法律AI助手:3步快速部署与实战指南

如何用ChatLaw构建你的专属法律AI助手&#xff1a;3步快速部署与实战指南 【免费下载链接】ChatLaw ChatLaw&#xff1a;A Powerful LLM Tailored for Chinese Legal. 中文法律大模型 项目地址: https://gitcode.com/gh_mirrors/ch/ChatLaw 还在为复杂的法律问题头疼吗&…...

Claude技能构建指南|第五章 模式与故障排除(Patterns and Troubleshooting)

Claude技能构建指南&#xff5c;第五章 模式与故障排除&#xff08;Patterns and Troubleshooting&#xff09; 1. ① 本章核心主旨 本章提供5种高频复用的技能设计模式&#xff0c;并针对上传、触发、执行、MCP连接等常见问题给出标准化排查方案&#xff0c;学完可直接套用成熟…...