首页 > 其他分享 >Django自定义URL转换器

Django自定义URL转换器

时间:2022-10-20 22:11:07浏览次数:60  
标签:username usernames 自定义 URL Django urls import 转换器

http://127.0.0.1:8000/usernames/zhangsan/count/

以上URL请求传递参数username,此username需进行校验,不满足条件,不需要进入视图进行验证,减少数据库调用。

可自定义转换器,编写正则,对参数进行校验,不满足条件直接显示404,找不到页面。


from django.urls import converters

class UsernameConverter:
    regex = '[a-zA-Z0-9_]'

    def to_python(self, value):
        return value

总路由urls.py

# 注册转换器  为了让不匹配的username无法匹配成应用的url
from utils.converters import UsernameConverter
from django.urls import register_converter

register_converter(UsernameConverter, 'username')

应用路由urls.py

urlpatterns = [
    path(r'usernames/<username:username>/count/', UsernameCountView.as_view())
]

http://localhost:8000/usernames/lisi/count

标签:username,usernames,自定义,URL,Django,urls,import,转换器
From: https://www.cnblogs.com/20190707wdd/p/16811509.html

相关文章

  • Spring AOP与自定义注解Annotation的使用 实践 @Around("@annotation(operationLog)")
    SpringAOP与自定义注解Annotation的使用AOP,Spring框架的两大核心之一,又称面向切面编程,通过代理模式,对原有的类进行增强。在Spring框架中,AOP有两种动态代理方式,其一是基......
  • 字段加密实践(django-fernet-fields)
    一、fernet介绍Fernet用于django模型字段对称加密,使用crytography库。官网帮助文档1、先决条件django-fernet-fields支持Django1.8.2以及更高版本,Python2.7、3......
  • 打印自定义行和列的字符
     #include<stdio.h>#pragmawarning(disable :4996)voiddisplay(charcr,intlines,intwidth);intmain() {  intch;  introw,col;  while((c......
  • Django启动问题大杂烩
    1.ProgrammingErrorat/admin/login/(1146,"Table'mes.auth_user'doesn'texist") 解决办法:输入命令:pythonmanage.pymigrate   更新数据库表单......
  • 记录python3.7版本中 Django+celery 启动报错
     虚拟环境启动I报错Traceback(mostrecentcalllast):File"/data/.virtualenvs/cmdb/lib/python3.7/site-packages/gunicorn/arbiter.py",line589,inspawn_w......
  • Django初始化创建用户名
    (venv)D:\project\py37project\Djangopro\Procrm>Pythonmanage.pycreatesuperuser  #这是创建Django初始化用户名跟密码的一个命令。示例如下:Username(leavebla......
  • JMeter 扩展开发:自定义 Java Sampler
    JMeter内置支持了一系列的常用协议,例如HTTP/HTTPS、FTP、JDBC、JMS、SOAP和TCP等,可以直接通过编写脚本来支持相关协议的测试场景。除了这些协议之外,用户也可能需要进行......
  • Django Rest Framework中文文档:Serializer relations
    这是对DRF官方文档:Serializerrelations的翻译,根据个人的理解对内容做了些补充、修改和整理。一,django模型间的关系在我们对数据进行建模时,最重要的一点就是根据功能需求......
  • nginx配置访问WGCLOUD页面URL地址不加后缀/wgcloud
    nginx配置如下这样就可以通过域名或IP直接访问WGCLOUD页面了,不用再加后面的/wgcloud了注意把localhost改为自己的实际server主机IPserver{listen......
  • 自定义镜像mycentos+vim+ifconfig+jdk8
    1.在docker中拉去centos镜像dockerpullcentos:7.9.20092.编写Dockerfile文件内容FROMcentos:7.9.2009#作者信息MAINTAINERzzyy#环境变量ENVMYPATH/usr/lo......