Django之名称空间、伪静态和虚拟环境

名称空间

  当多个应用出现相同的别名时,正常情况下的反向解析是没有办法自动识别前缀的,这种情况下就需要用到名称空间

  总路由

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^app01/', include('app01.urls', namespace='app01')),
    url(r'^app02/', include('app02.urls', namespace='app02'))

  app01

urlpatterns = [
    url(r'^reg/', views.reg, name='reg')
from django.shortcuts import reverse
def reg(request):
    print(reverse('app01:reg'))
    return HttpResponse('app01:reg')

  app02

urlpatterns = [
    url(r'^reg/', views.reg, name='reg')
]
from django.shortcuts import render, HttpResponse,reverse

# Create your views here.
def reg(request):
    print(reverse('app02:reg'))
    return HttpResponse('app02:reg')

  前端

{% url 'app01:reg' %}
{% url 'app02:reg' %}

  如何避免这种情况发生

    其实只要保证名字不冲突,就没有必要使用名称空间。

    一般情况下,有多个app的时候我们在起别名的时候会加上app的前缀,这样的话就能够确保多个app之间名字不冲突的问题

伪静态

  就是将一个动态网页伪装成静态网页

  伪装的目的在于增大本网站的eso查询力度,并且增加搜索引擎收藏本网站的概率

  搜索引擎本质上就是巨大的爬虫程序

  实现这种效果只需在urls文件后面添加html即可

urlpatterns = [
    url(r'^reg.html', views.reg, name='reg')
]

 虚拟环境

  每创建一个新的虚拟环境就类似于重新下载了一个纯净的python解释器

  虚拟环境不要创建太多,是需要消耗硬盘空间的

  虚拟环境创建

 

 

  有venv表示当前使用的是虚拟环境

 

posted @ 2022-02-28 21:16  那就凑个整吧  阅读(52)  评论(0编辑  收藏  举报