zoukankan      html  css  js  c++  java
  • django自定义过滤器

    django 自定义过滤器

    • 创建模型

      from django.db import models
      
      class User(models.Model):
          # 用户名
          username = models.CharField(max_length=32,unique=True)
          # 密码
          password = models.CharField(max_length=255)
          # 添加时间
          addtime = models.DateTimeField(auto_now_add=True)
      
      
          class Meta:
              # 指定表名
              db_table = 'user'
      
      
    • 创建视图函数

      from django.shortcuts import render
      from django.views import View
      from . import models
      
      class UserView(View):
          def get(self,request):
              user = models.User.objects.all()
              return render(request,'index.html',{"user":user})
      
    • 路由文件

      from django.urls import path
      from . import views
      urlpatterns = [
          path('user/',views.UserView.as_view())
      ]
      
    • 创建模版文件

      {% load mytags %}
      <body>
          <table>
              <tr>
                  <td>id</td>
                  <td>name</td>
                  <td>password</td>
                  <td>addtime</td>
              </tr>
              {% for i in user %}
              <tr>
                  <td>{{ i.id }}</td>
                  <td>{{ i.username }}</td>
                  <td>{{ i.password }}</td>
                  <td>{{ i.addtime | myTime }}</td>
              </tr>
              {% endfor %}
          </table>
      </body>
      
    • 创建 templatetags目录 并 创建自定义过滤器文件 mytags.py

      from django import template
      register = template.Library()
      @register.filter
      def myTime(val):
          return val.strftime('%Y-%m-%d %H:%M:%S')
  • 相关阅读:
    Redis(八)理解内存
    Redis(七)Redis的噩梦:阻塞
    Redis(六)复制
    Redis(五)持久化
    笔试面试经典问题
    两个栈实现一个队列
    单链表相关操作
    我的笔记本
    10进制正整数转4位定长的36进制字符串
    微软2016校园招聘在线笔试之Magic Box
  • 原文地址:https://www.cnblogs.com/ngngng/p/13891180.html
Copyright © 2011-2022 走看看