Django静态文件URL配置,django静态url,settings.py#


settings.py

#!usr/bin/env python#coding: utf-8import loggingimport os.pathDEBUG = TrueTEMPLATE_DEBUG = DEBUGHERE = os.path.dirname(os.path.abspath(__file__))ADMINS = (    # ('Your Name', 'your_email@example.com'),)MANAGERS = ADMINSDATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.        'NAME': 'djangodemo',                      # Or path to database file if using sqlite3.        'USER': 'root',                      # Not used with sqlite3.        'PASSWORD': '',                  # Not used with sqlite3.        'HOST': 'localhost',                      # Set to empty string for localhost. Not used with sqlite3.        'PORT': '3306',                      # Set to empty string for default. Not used with sqlite3.    }}# Local time zone for this installation. Choices can be found here:# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name# although not all choices may be available on all operating systems.# On Unix systems, a value of None will cause Django to use the same# timezone as the operating system.# If running in a Windows environment this must be set to the same as your# system time zone.TIME_ZONE = 'Asia/Shanghai'# Language code for this installation. All choices can be found here:# http://www.i18nguy.com/unicode/language-identifiers.htmlLANGUAGE_CODE = 'zh-cn'SITE_ID = 1# If you set this to False, Django will make some optimizations so as not# to load the internationalization machinery.USE_I18N = True# If you set this to False, Django will not format dates, numbers and# calendars according to the current localeUSE_L10N = TrueMEDIA_ROOT = os.path.join(HERE, 'data').replace('\\','/')STATIC_ROOT = os.path.join(HERE, 'static').replace('\\','/')CAPTCHA_FONT=os.path.join(HERE,'static/Vera.ttf')# Absolute filesystem path to the directory that will hold user-uploaded files.# Example: "/home/media/media.lawrence.com/media/"#MEDIA_ROOT = ''# URL that handles the media served from MEDIA_ROOT. Make sure to use a# trailing slash.# Examples: "http://media.lawrence.com/media/", "http://example.com/media/"MEDIA_URL = '/media/'# Absolute path to the directory static files should be collected to.# Don't put anything in this directory yourself; store your static files# in apps' "static/" subdirectories and in STATICFILES_DIRS.# Example: "/home/media/media.lawrence.com/static/"#STATIC_ROOT = ''# URL prefix for static files.# Example: "http://media.lawrence.com/static/"STATIC_URL = '/static/'# URL prefix for admin static files -- CSS, JavaScript and images.# Make sure to use a trailing slash.# Examples: "http://foo.com/static/admin/", "/static/admin/".ADMIN_MEDIA_PREFIX = '/static/admin/'# Additional locations of static filesSTATICFILES_DIRS = (    # Put strings here, like "/home/html/static" or "C:/www/django/static".    # Always use forward slashes, even on Windows.    # Don't forget to use absolute paths, not relative paths.)# List of finder classes that know how to find static files in# various locations.STATICFILES_FINDERS = (    'django.contrib.staticfiles.finders.FileSystemFinder',    'django.contrib.staticfiles.finders.AppDirectoriesFinder',#   'django.contrib.staticfiles.finders.DefaultStorageFinder',)# Make this unique, and don't share it with anybody.SECRET_KEY = '3d5&166r)l@xd4zc-a$iuw3nkyi99ee4!k3bjhy)ly1i8pc*b9'#UPLOAD SETTINGSFILE_UPLOAD_TEMP_DIR = os.path.join(HERE, 'data/upload/').replace('\\', '/')FILE_UPLOAD_HANDLERS = ("django.core.files.uploadhandler.MemoryFileUploadHandler", "django.core.files.uploadhandler.TemporaryFileUploadHandler",)DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'# for user uploadALLOW_FILE_TYPES = ('.jpg', '.jpeg', '.gif', '.bmp', '.png', '.tiff')# unit byteALLOW_MAX_FILE_SIZE = 1024 * 1024# List of callables that know how to import templates from various sources.TEMPLATE_LOADERS = (    'django.template.loaders.filesystem.Loader',    'django.template.loaders.app_directories.Loader',    'django.template.loaders.eggs.Loader',)MIDDLEWARE_CLASSES = (    'django.middleware.common.CommonMiddleware',    'django.contrib.sessions.middleware.SessionMiddleware',    'django.middleware.csrf.CsrfViewMiddleware',    'django.contrib.auth.middleware.AuthenticationMiddleware',    'django.contrib.messages.middleware.MessageMiddleware',)ROOT_URLCONF = 'urls'TEMPLATE_DIRS = (   os.path.join(HERE,'templates'),)TEMPLATE_CONTEXT_PROCESSORS = (      "django.core.context_processors.auth",     "django.core.context_processors.request",    "django.core.context_processors.media", ) INSTALLED_APPS = (    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.sites',    'django.contrib.messages',    'django.contrib.staticfiles',    # Uncomment the next line to enable the admin:    'django.contrib.admin',    # Uncomment the next line to enable admin documentation:    'django.contrib.admindocs',    'blog',    'account',    'news',    'photo',    'rbac',)# A sample logging configuration. The only tangible logging# performed by this configuration is to send an email to# the site admins on every HTTP 500 error.# See http://docs.djangoproject.com/en/dev/topics/logging for# more details on how to customize your logging configuration.LOGGING = {    'version': 1,    'disable_existing_loggers': False,    'handlers': {        'mail_admins': {            'level': 'ERROR',            'class': 'django.utils.log.AdminEmailHandler'        }    },    'loggers': {        'django.request': {            'handlers': ['mail_admins'],            'level': 'ERROR',            'propagate': True,        },    }}#mailEMAIL_HOST = 'smtp.gmail.com'                   #邮件smtp服务器EMAIL_PORT = '25'                                        #端口EMAIL_HOST_USER = 'code***@gmail.com'  #邮件账户EMAIL_HOST_PASSWORD = '*********'      #密码EMAIL_USE_TLS = False

urls.py

#!usr/bin/env python#coding: utf-8from django.conf.urls.defaults import patterns, include, urlfrom django.conf import settings# Uncomment the next two lines to enable the admin:from django.contrib import adminadmin.autodiscover()urlpatterns = patterns('',    # Examples:    # url(r'^$', 'djangodemo.views.home', name='home'),    # url(r'^djangodemo/', include('djangodemo.foo.urls')),    # Uncomment the admin/doc line below to enable admin documentation:    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),    # Uncomment the next line to enable the admin:    url(r'^$', 'account.views.index',name="index"),    url(r'^admin/', include(admin.site.urls)),    url(r'^blog/', include('blog.urls')),    url(r'^account/', include('account.urls')),    url(r'^news/', include('news.urls')),    url(r'^photo/', include('photo.urls')),    url(r'^rbac/', include('rbac.urls')),    url(r'^static/(?P<path>.*)$','django.views.static.serve',{'document_root':settings.STATIC_ROOT}),    url(r'^media/(?P<path>.*)$','django.views.static.serve',{'document_root': settings.FILE_UPLOAD_TEMP_DIR}),)

评论关闭