准确的说,已经有近20天没有进行更新了,不得不说,本来就记得不多的内容真的快忘完了,所以这两天还是抓紧回忆一下之前的几个关键内容。
一、ajax
基本是实现自动向后台发送请求的功能,从而保证将错误提前发现,常用在注册时检测是否有不合法输入。
使用方法:
二、关于模板在html中的模板语句
关于自定义filter和simple_tag
filter是单个参数的函数,而simple_tag则可以使用多个参数,但是前者需要{ 参数|函数:参数 }的方式,simple_tag不需要,其使用{ { 函数名 参数1 参数2 参数3.。。 } }参数之间通过逗号分开
使用方法:
1.新建py文件
2.文件内容中采用固定格式导入
from django import template from django.utils.safestring import mark_safe register = template.Library()
3.根据所选则要创建的函数要求,分别在自定义方法前增加前缀 @register.filter 或 @register.simple_tag
4.在html文件中导入创建的py文件,方法是{% load py文件名 %}
filter函数只能传递两个参数,而且其中一个参数必须是调用者自己
{{ 调用函数的参数 | 函数名 : 第二个参数}}
simple_tag的函数可以传递多个参数
{ % 函数名 空格 参数1 空格 参数2.。。。。。 % }参数之间用空格分开
5、在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag.
特别注意:filter可以用在if等语句后,simple_tag不可以
三、用户名不能含有'haha',密码不能小于3位数
前端:
{% if num >= 100 and 8 %} {% if num > 200 %} <p>num大于200</p> {% else %} <p>num大于100小于200</p> {% endif %} {% elif num < 100%} <p>num小于100</p> {% else %} <p>num等于100</p> {% endif %} {% if %} 标签接受and,or或者not来测试多个变量值或者否定一个给定的变量 {% if %} 标签不允许同一标签里同时出现and和or,否则逻辑容易产生歧义,例如下面的标签是不合法的: {% if obj1 and obj2 or obj3 %}
后端:
# 后端 def login(request): # 定义一个报错信息字典,用于前端span标签错误提示 errors = {'username':'', 'password':''} if request.method == 'POST': # 获取到用户名合密码 username = request.POST.get('username') password = request.POST.get('password') # 判断用户名和密码规则 if 'haha' in username: errors['username'] = '用户名不规范' if len(password) < 3: errors['password'] = '密码不能小于位' return render(request, 'login.html', locals())
四、停更之前的bootstrap和frontawesome
主要目的是让我们这种没有审美的基础练习者把画面做的更美,所以目前我急需把之前稍微有点样子的东西做的好看一些,
暂时就是这些,因为今天开始看不懂的地方太多了,时间有限,就是这些了。