Django中的自定义模板过滤器
Django是一个基于Python的网络框架,可以让你快速创建高效的网络应用。它也被称为包含电池的框架,因为Django提供了包括Django管理界面、默认数据库–SQLlite3等一切内置功能。
什么是Django模板语言(DTL)中的过滤器
在了解如何在Django模板语言中制作自定义过滤器之前,让我们先了解一下什么是Django的过滤器。
- 过滤器也是我们模板语言的重要特征。
- 过滤器基本上用于修改或过滤你的变量。
- 你必须使用这个管子(|)符号来应用任何变量的过滤器。
例如:-
因此,这个过滤器将以小写字母修改这个变量值
{{变量_名称|过滤器_名称}}
如何在Django中创建自定义模板过滤器
首先安装,使用以下命令创建django项目:-
django-admin startproject myproj
cd myproj
然后在myproj中创建新的应用程序
For Ubuntu
python3 manage.py startapp main
在INSTALLED_APPS内的settings.py中添加应用程序名称
在你的views.py中添加这个视图
from django.shortcuts import render
# Create your views here.
def home(request):
value="GEEKSFORGEEKS"
return render(request,"home.html",{"value":value})
现在让我们在我们的主文件夹中建立templatetags目录
别忘了在templatetag目录下创建init.py文件
然后创建 lower_filter.py文件
from django import template
register = template.Library()
@register.filter()
def low(value):
return value.lower()
在主目录下创建一个目录,将其命名为模板
在模板目录中创建一个文件,并将其命名为home.html。
<!DOCTYPE html>
<html>
<head>
<title>Welcome To GFG</title>
</head>
<body>
{% load lower_filter %}
<h1>{{value|low}}</h1>
</body>
</html>
在主目录下创建一个文件,并将其命名为urls.py
from django.urls import path
from .views import *
urlpatterns = [
path('', home,name="home"),
]
myproj/urls.py
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('',include("main.urls"))
]
打开cmd或终端
For Ubuntu
python3 manage.py runserver
输出 :-