首页 > 其他 > 详细

django之创建工程及简单的配置

时间:2015-06-03 02:20:32      阅读:307      评论:0      收藏:0      [点我收藏+]
#settings.py文件没有过多的解译,有问题可以留言或者加QQ及微信群讨论。

在我们安装完django后,会有一个可执行文件django-admin.py。它是一个命令行工具,可以执行一些管理任务,比如创建Django项目。
在django里创建这些的动作还是比较简单的。如下为创建工程以及app。


django-admin.py startproject liuxin 创建了一个工程 名为置当前liuxin
python manage.py startapp idc  在liuxin工程下创建一个app名为idc




当然创建很简单,现在简单的说下配置。当我们创建完工程后,在这个liuxin项目里会有一个manage.py文件,它是对django-admin.py的简单包装,它在创建每个Django project时都会自动添加在项目目录下的,它的功能是将Django project放到sys.path目录中,同时设置DJANGO_SETTINGS_MODULE环境变量为当前project的setting.py文件。


django-admin.py是调用django.core.management来执行命令:


#!/usr/bin/env python
from django.core import management
    
if __name__ == "__main__":
   management.execute_from_command_line()


excute_from_command_line()函数会根据命令行参数解析出命令的名称,根据命令名称调用相应的Command执行命令。
manage.py还有一些相关的命令以后随着应用模块和数据库的应用会介绍到。




在工程liuxin下还会有一个名liuxin的文件夹,也可以认为是liuxin这个项目的主配置文件夹。当创建liuxin这个项目后,这个文件夹里会的这以几个文件生成。     __init__.py:python特性,可以是空文件,只是表明这个文件夹是一个可以导入的包。
settings.py:配置文件,主要是数据库信息、加载模块的信息。
url.py:URL配置文件,指定函数与URL的映射关系。
wsgi.py:暂时不用了解,开发都是用Django自带的测试服务器,用nginx/apahce+wsgi启动Django时才用得上。


创建完工程后,就可以启动自带的服务器来调试了


python manage.py runserver
python manage.py runserver 8080 #修改端口号,默认的是8000
python manage.py runserver 0.0.0.0:8000 #服务器监听任意IP的8000端口




以下是settings文件的内容,url.py这里暂时先不说,后面会介绍到。
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os
import sys
reload(sys)
sys.setdefaultencoding("utf-8")


BASE_DIR = os.path.dirname(os.path.dirname(__file__))




# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.7/howto/deployment/checklist/


# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = ‘=$)9pp3oskd#n8+26=(-jhjj65+=u#9(h&e87k70abhfy#xnsg‘


TEMPLATE_LOADERS = (
    ‘django.template.loaders.filesystem.Loader‘,
    ‘django.template.loaders.app_directories.Loader‘,
#     ‘django.template.loaders.eggs.Loader‘,
)


# SECURITY WARNING: don‘t run with debug turned on in production!
DEBUG = True


TEMPLATE_DEBUG = True


DEBUG_TOOLBAR_PATCH_SETTINGS = False


ALLOWED_HOSTS = []




TEMPLATE_DIRS = (
    # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
    # Always use forward slashes, even on Windows.
    # Don‘t forget to use absolute paths, not relative paths.
    os.path.join(BASE_DIR, ‘templates‘).replace(‘\\‘,‘/‘),
    ‘/Library/Python/2.7/site-packages/debug_toolbar/templates‘,


)


# Application definition


INSTALLED_APPS = (
    ‘django.contrib.admin‘,
    ‘django.contrib.auth‘,
    ‘django.contrib.contenttypes‘,
    ‘django.contrib.sessions‘,
    ‘django.contrib.messages‘,
    ‘django.contrib.staticfiles‘,
    ‘debug_toolbar‘,
    ‘debugtools‘
    ‘idc‘
)


MIDDLEWARE_CLASSES = (
    ‘django.contrib.sessions.middleware.SessionMiddleware‘,
    ‘django.middleware.common.CommonMiddleware‘,
    # ‘django.middleware.csrf.CsrfViewMiddleware‘,
    # ‘django.middleware.csrf.CsrfResponseMiddleware‘,
    ‘django.contrib.auth.middleware.AuthenticationMiddleware‘,
    ‘django.contrib.auth.middleware.SessionAuthenticationMiddleware‘,
    ‘django.contrib.messages.middleware.MessageMiddleware‘,
    ‘django.middleware.clickjacking.XFrameOptionsMiddleware‘,
    ‘debug_toolbar.middleware.DebugToolbarMiddleware‘,
)


ROOT_URLCONF = ‘liuxin.urls‘


# INTERNAL_IPS = (‘127.0.0.1‘,)
INTERNAL_IPS = (‘0.0.0.0‘,)




WSGI_APPLICATION = ‘liuxin.wsgi.application‘




# Database
# https://docs.djangoproject.com/en/1.7/ref/settings/#databases


DATABASES = {
    ‘default‘: {
        ‘ENGINE‘: ‘django.db.backends.sqlite3‘,
        ‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),
    }
}


# DATABASES = {
#     ‘default‘: {
#         ‘ENGINE‘: ‘django.db.backends.mysql‘,
#         ‘NAME‘: ‘liutest‘,
#         ‘USER‘: ‘root‘,
#         ‘PASSWORD‘: ‘aaaaaa‘,
#         ‘HOST‘:‘localhost‘,
#         ‘PORT‘:‘3306‘,
#     }
# }


# Internationalization
# https://docs.djangoproject.com/en/1.7/topics/i18n/


LANGUAGE_CODE = ‘en-us‘


#TIME_ZONE = ‘UTC‘
TIME_ZONE = ‘Asia/Shanghai‘


USE_I18N = True


USE_L10N = True


USE_TZ = True




# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.7/howto/static-files/
STATIC_ROOT = ‘‘




STATIC_URL = ‘/static/‘
# STATIC_ROOT = os.path.join(PROJECT_ROOT,‘static‘)
STATICFILES_DIRS = (
   os.path.join(BASE_DIR, ‘static‘).replace(‘\\‘,‘/‘),




)






这里面有模板的配置、数据库的配置、添加新的应用、中间件、表态文件路径等,建议先和默认文件对比下,我这里都是已经改了一些的了,比如时区。




django之创建工程及简单的配置

原文:http://blog.chinaunix.net/uid-10915175-id-5060795.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!