• Python学习第157天(关于绑定事件部分的知识回顾)


    准确的说,已经有近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

      主要目的是让我们这种没有审美的基础练习者把画面做的更美,所以目前我急需把之前稍微有点样子的东西做的好看一些,

      暂时就是这些,因为今天开始看不懂的地方太多了,时间有限,就是这些了。

  • 相关阅读:
    docker学习-docker核心技术
    Ecmall 中国地区设置
    lazyload.js实现图片异步载入
    inpyt 按钮变透明 边框
    vertical-align0 垂直对齐- 图片 兼容个浏览器
    div文字超出
    jquery满屏滚动代码
    $().index() 两种用法
    setTimeout不断重复执行
    background属性
  • 原文地址:https://www.cnblogs.com/xiaoyaotx/p/13676088.html
Copyright © 2020-2023  润新知