美文网首页
Django建站笔记(一)——基本配置

Django建站笔记(一)——基本配置

作者: hgt312 | 来源:发表于2017-08-22 15:05 被阅读0次

    Django: The web framework for perfectionists with deadlines.

    django是python最流行的框架之一,特点是大而全,自带模板系统、优秀的ORM框架,还有完善的后台管理系统。

    这次建站为了使用xadmin,考虑到其兼容性,故选择了python2.7.13,Django1.9.13(这个版本在今年上半年已经不再支持了,建议大家使用1.11LTS)

    xadmin是国人开发的基于django的后台管理系统,用到了bootstrap,还有许多自带的插件(然而我没怎么研究),虽然不知道比官方的强在哪里,不过挺好用的就是了


    Django settings.py配置

    settings.py是django项目的配置文件,很多重要的参数都要在这里设置

    DEBUG

    在开发环境中,DEBUG应设置为TRUE,在404、500等页面会有详细的错误提示,同时会自动启动用于处理静态文件的中间件

    ALLOWED_HOSTS

    ALLOWED_HOSTS设置允许访问的ip,DEBUG = TRUE时不用管它,DEBUG = FALSE时必须配置,通常配置为'*'即可

    INSTALLED_APPS & 根路径设置

    INSTALLED_APPS是一个列表,收录所以需要加载的应用。在django项目中,我们自己创建的每个app自然都要加进去。

    通常,我们自建的app都放在根目录下,当项目很庞大时,app的数量就会很多。这是我们可以新建一个apps的package,将app们放进去,以便于目录结构的整洁。

    但这时有必要设置根路径了,下面这行代码就起了这样的作用

    sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
    

    AUTH_USER_MODEL & AUTHENTICATION_BACKENDS

    django自带有认证系统,但默认的user表有时并不能满足我们的需求。登陆方法也是,默认的登陆后台只能通过用户名进行登陆。这是我们就会用到这两个参数了。

    AUTH_USER_MODEL = "users.UserProfile"
    AUTHENTICATION_BACKENDS = (
        'users.views.CustomBackend',
    )
    

    TEMPLATES & DATABASES

    django有自己默认的模板引擎,但也可以换成其他的,完全根据个人喜好。

    django中默认的数据库是sqlite3,同样可以选用其他数据库,也可以启用多个数据库。比如session的存储就能用到redis或mongodb。

    本地化设置

    通常设置成这样即可:

    LANGUAGE_CODE = 'zh-hans'
    
    TIME_ZONE = 'Asia/Shanghai'
    
    USE_I18N = True
    
    USE_L10N = True
    
    USE_TZ = False
    

    静态、媒体文件配置

    STATIC_URL = '/static/'
    
    # STATICFILES_DIRS = (
    #     os.path.join(BASE_DIR, "static"),
    # )
    
    STATIC_ROOT = os.path.join(BASE_DIR, "static")
    
    MEDIA_URL = '/media/'
    
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
    

    这些变量中,两个URL是用于模板使用的,这里注意要和ROOT写成“一样的”

    在DEBUG = True时,指定STATICFILES_DIRS即可配置静态文件;而在DEBUG = False时,需要这样配置urls.py文件:

    from django.views.static import serve
    
    
    urlpatterns = [
        url(r'^media/(?P<path>.*)$', serve, {"document_root": MEDIA_ROOT}),
    ]
    

    当然,DEBUG = False即意味着生产环境,没人会这样配置的==

    相关文章

      网友评论

          本文标题:Django建站笔记(一)——基本配置

          本文链接:https://www.haomeiwen.com/subject/xpdldxtx.html