zoukankan      html  css  js  c++  java
  • 10个实用的Django建议(转)

    前言:随着Django1.4第二个候选版的发布,虽然还不支持Python3,但Django团队已经在着手计划中,据官方博客所说,

    Django1.5将会试验性的支持python3。Django 作为一个杰出的Python开源框架,或许得不到和其它流行框架如Rails这样多

    的赞美,但是它和其他框架一样精炼,非常注重DRY(Don’t Repeat Yoursef)原则、组件的重用性,通过自动化过程使编码更简洁。

    如果在Django项目中能够灵活使用某些方法和技巧的话,它将大大加快软件开发的速度同时避免很多头疼的事。作者在下面列举了几点,

    这些方法由浅入深,可以帮助任何级别的程序员更加熟练的使用Django。

    0、  在配置中使用相对路径

    某些原因使得项目可能常常会被来回的迁移。如果没有事先规划好这种可能性的话这绝对是一个棘手的问题。Rob Hudson 有一个极好

    的技巧能够确保你的Django项目在部署过程中能够轻松的来回迁移。仅仅只要编写几行代码在你的配置文件(settings.py)中。

    1
    2
    3
    4
    5
    6
    import os
    BASE_DIR = os.path.dirname(os.path.abspath(__file__))
     
    TEMPLATE_DIRS = (
        BASE_DIR + '/templates',
    )

    1、  使用{%url%}标签

    尽可能使用向后兼容的{%url%}标签来替换硬编码形式的href,与使用绝对路径的url(当然最好不要这样做) 一样达到相同的效果。

    你的Django项目迁移起来,那些链接也不会有影响。(译者注:比如说我们有一个views.about函数指向about页面 r’^about/$’,

    就可以{% url views.about as about_url %}然后用{{about_url}}这个变量来代替绝对URL地址)尽管它还不是最高级的技巧,

    但是它确实值得你应用于Django项目中。

     Photo by Cloudzilla.

    2、  尝试把Django admin应用到PHP项目中

    Django最伟大的特性之一就是已经成为Django的核心功能的用户验证系统。它易安装,主要用于用户认证和其它一些必要的配置。

    这个酷毙了的用户系统甚至被建议应用到你的PHP项目中去,这里有一边Jeff Croft 关于为什么Django能够作为任何语言任何应用

    中的系统管理模块的一个很好的解决方案。

    3、  使用独立的媒体服务器

    在开发环境中把静态文件放在与Django项目所在的同一台服务器中问题并不大,但是却不要使用在生产环境中,为什么?效率问题。

    Jacobian.org给出了一个合理的解释。通过一台独立的服务器来处理静态文件,性能将得到有效的提升,如果不想买服务器的话,

    那么使用Amazon S3相对来更便宜。

    4、  使用Debugger工具条

    调试工具对任何一种语言来说都是不可或缺的.他们能够加快开发的速度,指出潜在的缺陷.  Rob Hudson开发了一个对开发人员非常有用

    django调试工具:django-debug-toolbar

    5、 使用Django单元测试

    利用单元测试确保你代码的改变和预期的一样,而不会破坏任何老的代码,以便向后兼容。Django一个强大的特性就是他能极其

    简单地写单元测试。Django也可直接使用python的文本测试单元测试。Django的文档提供了一个详细的教程和样例代码关于

    怎样做单元测试使得代码正确地运行,以及去除讨厌的bug。

    6、 使用速查卡

    这里有两页厚的速查卡,在 Django文档中你可能翻来覆去要找半天的东西在这里一目了然。它包含如下几个主题

    模板:

    模板标签及可选项

    模板过滤器及可选项

    日期格式化语法快速查阅

    模型:

    域和及选项

    常用域的可选项

    元类型可选项

    模型管理可选项

    表单:

    域和可选项

    常用域可选项

    标准错误消息键值

    7、使用Django-chunks

    除了使用Django的富文本编辑器创建块更容易之外,Django-chunks同样是用于模板中,这是重用代码块的必不可少的工具。

    8、 使用Memcache

    如果性能在你的Django项目中已经成为一个棘手的问题,那么你将需要使用一些缓存策略。然而Django为缓存提供很多的选择。

    目前最好的无疑 是Memcache,用Django安装memcache非常地简单,如果你使用cmemcache模块的时候。只要模块安装完

    成后,你仅仅修改一行配置 项,你的Django页面变得轻快起来。

    9、使用Django,心动不如行动

    在你阅读完这篇文章后如果你仍然不完全理解Django的强大,在你的下一个项目中使用Django的一个合符情理的理由就是:

    它能够节省各种不同软件设计的时间。Jeff Croft解释为什么用Django创建一个项目比你自己设计出来的更高效。Django允许

    你扩展自己的Web站点,不需要担心设计或者代码以及数据库的兼容性,它会工作地很棒。

  • 相关阅读:
    jstat命令行工具监控JVM内存和垃圾回收
    SkyWalking 日志监控
    SkyWalking 数据持久化
    问题记录: java 19000101 08:05:43 时间偏移bug
    springboot jest链接es
    redisRedisLockRegistry 分布式锁
    es 索引别名
    springboot elasticsearchresthighlevelclient 连接es
    缓存穿透、缓存击穿和缓存雪崩 概念
    Navicat for MySQL 导出中文乱码问题
  • 原文地址:https://www.cnblogs.com/ajianbeyourself/p/3813303.html
Copyright © 2011-2022 走看看