Django05-2:路由分发/命名空间/伪静态/虚拟环境/django版本区别

路由分发

补充:每一个应用可以有独立的templates模板文件夹,static静态文件加,urls.py

总路由

#方法一

from app01 import urls as app01_urls
from app02 import urls as app02_urls

urlpatterns = [
    url(r'^publisher_list/', views.publisher_list),

    
    url(r'^app01/', include(app01_urls)),
    url(r'^app02/', include(app02_urls)),
]

#方法二,推荐使用。

urlpatterns = [
    url(r'^publisher_list/', views.publisher_list),

    
    url(r'^app01/', include('app01.urls')),
    url(r'^app02/', include('app02.urls')),
    #!!!! 不能加$
]

子路由

#app01 url.py

from django.conf.urls import url
from app01 import views

urlpatterns = [

    url(r'^test/', views.test),   
]




#app02 url.py 

#与app01 相同

命名空间(了解)

总路由

urlpatterns = [
    url(r'^publisher_list/', views.publisher_list),

    
    url(r'^app01/', include('app01.urls',namespace='app01')),
    url(r'^app02/', include('app02.urls',namespace='app02')),
    #!!!! 不能加$
]

Ps:

1. 保证命名冲突,可以不用。

2. 命名的时候,加入前缀。

伪静态(了解)

将动态网页伪装静态网页。

目的:

增大搜索引擎本网站收录概率

总结:

无论怎么处理,干不过rmb玩家。

做法:

url路径后面加如".html"

虚拟环境(了解)

补充扩展:

工作中,会给每一个项目配置一个requirements.txt文件,里面记录了该项目所需要的所有的模块和版本,直接一条一条安装即可。

建议:

1.使用本机环境

2.不要太多虚拟环境

1.创建新环境,下载新解析器

2.太多浪费空间资源。

->create new window 需要等待。

安装需要的版本

重新打开pycharm,使用之前创建的虚拟环境即可,不需要重新创建。

django版本区别

3.0:

a. url.py 使用path ,不支持url正则。可使用re_path替代。

b. 2.x和3.x 等价与1.x的url

c. 3.0是异步框架,不兼容pymysql。(3.0异步不成熟)

path虽然不支持url,但支持5中转换器。

path('index/<int:id>',index)

#先转换类型,在以关键字传入视图函数。

可自定义转换器。

3. models模型层里面1.x默认是级联更新删除的

但是2.x和3.x需要手动更新

        1.x:models.ForeignKey(to='Publish')

         2.x/3.x: models.ForeignKey(to='Publish',on_delete=models.CASCADE.....)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值