2016-08-20 4 views
1

settings.pyWie Django-CMS-Vorlagen

from .ENV import BASE_DIR, ENV_VAR 

# SECURITY WARNING: don't run with debug turned on in production! 
# False if not in os.environ 
DEBUG = ENV_VAR('DEBUG', default=False) 

# SECURITY WARNING: keep the secret key used in production secret! 
# If not found in os.environ will raise ImproperlyConfigured error 
SECRET_KEY = ENV_VAR('SECRET_KEY') 

SITE_ID = 1 

# Application definition 
INSTALLED_APPS = [ 
    'djangocms_admin_style', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.admin', 
    'django.contrib.sites', 
    'django.contrib.sitemaps', 
    'django.contrib.staticfiles', 
    'django.contrib.messages', 
    'cms', 
    'menus', 
    'sekizai', 
    'treebeard', 
    'djangocms_text_ckeditor', 
    'djangocms_style', 
    'djangocms_column', 
    'djangocms_file', 
    'djangocms_googlemap', 
    'djangocms_inherit', 
    'djangocms_link', 
    'djangocms_picture', 
    'djangocms_teaser', 
    'djangocms_video', 
    'reversion', 
    'config', 
] 

MIDDLEWARE_CLASSES = [ 
    'cms.middleware.utils.ApphookReloadMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.locale.LocaleMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware', 
    'cms.middleware.user.CurrentUserMiddleware', 
    'cms.middleware.page.CurrentPageMiddleware', 
    'cms.middleware.toolbar.ToolbarMiddleware', 
    'cms.middleware.language.LanguageCookieMiddleware' 
] 

ROOT_URLCONF = 'urls' 

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [ 
      BASE_DIR('config/templates'), 
     ], 
     'OPTIONS': { 
      'context_processors': [ 
       'django.contrib.auth.context_processors.auth', 
       'django.contrib.messages.context_processors.messages', 
       'django.core.context_processors.i18n', 
       'django.core.context_processors.debug', 
       'django.core.context_processors.request', 
       'django.core.context_processors.media', 
       'django.core.context_processors.csrf', 
       'django.core.context_processors.tz', 
       'sekizai.context_processors.sekizai', 
       'django.core.context_processors.static', 
       'cms.context_processors.cms_settings' 
      ], 
      'loaders': [ 
       'django.template.loaders.filesystem.Loader', 
       'django.template.loaders.app_directories.Loader', 
       'django.template.loaders.eggs.Loader' 
      ], 
     }, 
    }, 
] 

WSGI_APPLICATION = 'config.wsgi.application' 

# Database 
# https://docs.djangoproject.com/en/1.8/ref/settings/#databases 
DATABASES = { 
    'default': ENV_VAR.db() 
} 

# Password validation 
# https://docs.djangoproject.com/en/1.9/ref/settings/#auth-password-validators 
AUTH_PASSWORD_VALIDATORS = [ 
    { 
     'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 
    }, 
] 

# Internationalization 
# https://docs.djangoproject.com/en/1.8/topics/i18n/ 
LANGUAGE_CODE = 'en' 
TIME_ZONE = 'Asia/Kolkata' 
USE_I18N = True 
USE_L10N = True 
USE_TZ = True 

MEDIA_ROOT = BASE_DIR('media', default='') 
MEDIA_URL = '/media/' 

# Static files (CSS, JavaScript, Images) 
# https://docs.djangoproject.com/en/1.8/howto/static-files/ 
STATIC_URL = '/static/' 
STATIC_ROOT = BASE_DIR('static') 
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
    'django.contrib.staticfiles.finders.FileSystemFinder', 
) 
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage' 

urls.py

from __future__ import absolute_import, print_function, unicode_literals 

from cms.sitemaps import CMSSitemap 
from django.conf import settings 
from django.conf.urls import include, url 
from django.conf.urls.i18n import i18n_patterns 
from django.contrib import admin 

admin.autodiscover() 

urlpatterns = [ 
    url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', 
     {'sitemaps': {'cmspages': CMSSitemap}}), 
    url(r'^select2/', include('django_select2.urls')), 
] 

urlpatterns += i18n_patterns(
    '', 
    url(r'^admin/', include(admin.site.urls)), 
    url(r'^', include('cms.urls')), 
) 

DIR Struktur

. 
|-- apps 
| |-- __init__.py 
|-- config 
| |-- __init__.py 
| |-- settings 
| | |-- base.py 
| | |-- configurations 
| | | |-- DJANGOCMS.py 
| | | |-- DJANGO.py 
| | | |-- ENV.py 
| | | |-- GRAPPELLI.py 
| | | |-- __init__.py 
| | |-- dev.py 
| | |-- __init__.py 
| | `-- pro.py 
| |-- templates 
| | |-- base.html 
| | |-- feature.html 
| | |-- menu.html 
| | |-- page.html 
| |-- wsgi.py 
|-- manage.py 
|-- media 
|-- requirements 
| |-- base.txt 
| |-- dev.txt 
| `-- pro.txt 
|-- requirements.txt 
|-- static 
|-- urls.py 

enter image description here

Ich bin nicht in der Lage zu überschreiben, um Öffne localhost: 8000/es leitet mich immer zur Anmeldeseite weiter. Dann habe ich ein neues Projekt erstellt und dieses Mal das Standard-Projekt-Layout gehalten, und jetzt ist es das, was ich sehe, wenn ich öffne localhost: 8000/

enter image description here

Also, wenn jemand kann mir sagen, was falsch ist? ? Wie verwende ich benutzerdefinierte Vorlagen?

Antwort

1

Zunächst, wenn es Sie auf die Anmeldeseite umleitet, ist das wahrscheinlich, weil es noch keinen Inhalt gibt. Basierend auf der Frage gehe ich davon aus, dass es sich um eine Neuinstallation ohne Seiten handelt. Sie müssten sich also anmelden, Ihre Seiten erstellen und dann sollten Sie sie ohne die Admin-Weiterleitung laden.

In Bezug auf das Überschreiben von Vorlagen funktioniert es wie für alle Django- oder App-Vorlagen.

Wenn Sie eine benutzerdefinierte Vorlage verwenden möchten, erstellen Sie einfach eine eigene Version, die demselben Pfad wie das Original folgt, aber in einem Ihrer eigenen Vorlagenverzeichnisse.

Zum Beispiel habe ich ein Verzeichnis in meinem Projekt, wo ich CMS-Vorlagen überschreiben;

/project/myapp/templates/cms/toolbar/plugin.html

, die Sie im CMS App Leben in der gleichen Vorlage Weg sehen kann;

https://github.com/divio/django-cms/tree/release/3.3.x/cms/templates/cms/toolbar

Wenn Sie haben Vorlagen, die Sie wünschen für das CMS als Seitenvorlagen zur Verfügung zu stellen, dann gibt es eine CMS_TEMPLATES Einstellung, die Sie wie so hinzuzufügen;

CMS_TEMPLATES = (
    ('home.html', 'Homepage'), 
    ('article.html', 'Article'), 

    ('blogs/entry_form.html', 'Blogs Competition Entry Form'), 
)