djano-cms学习笔计(一)

开放源码的内容管理系统,基于Web框架Django的。

优势如下

 

  1.  高度可扩展的插件系统,可让您自由地构建各种内容的网站。
  2.  前端编辑直接更改您的网站上的内容。工程的所有插件。
  3.  感谢可读的网址的页面结构是完美的搜索引擎优化
  4.  整合网上商店与  Django的商店  -一个高度灵活和可扩展的电子商务解决方案。
  5.  添加博客引擎使用相同的内容插件,您使用Django的CMS。
  6.  权限管理,设置不同用户的具体权利。
  7.  数百开发商开发的Django CMS管理的不断发展,通过  GitHub上。
  8. 可用Python应用程序轻松添加数百或准备使用附加组件。
  9. 可用Python应用程序轻松添加数百或准备使用附加组件。

安装方法

 

pip 安装,cmd命令行工具

easy_install pip

pip install Django==1.5 django-cms south

直接用easy_install 安装,cmd命令行工具

easy_install django-cms

 

 

应用,

1.新建django项目,cmd进入到工作目录

django-admin.py startproject myproject

2.修改配置文件 myproject/myproject/settings.py

 

 

顶部加上

# -*- coding: utf-8 -*-

import os

gettext = lambda s: s

PROJECT_PATH = os.path.split(os.path.abspath(os.path.dirname(__file__)))[0]
设置语言
LANGUAGES = [

    ('en', 'English'),

    ]

LANGUAGE_CODE = 'en-us'

数据库配置
DATABASES = {

    'default': {

        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.

        'NAME': 'django_cms',                      # Or path to database file if using sqlite3.

        # The following settings are not used with sqlite3:

        'USER': 'root',

        'PASSWORD': '123456',

        'HOST': '127.0.0.1',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.

        'PORT': '3306',                      # Set to empty string for default.

    }

}
文件路径配置
# 上传文件保存目录,绝对路径

STATIC_ROOT = os.path.join(PROJECT_PATH, "static")

STATIC_URL = "/static/"



#静态文件目录,绝对地址,例如 js css文件

MEDIA_ROOT = os.path.join(PROJECT_PATH, "media")

MEDIA_URL = "/media/"
middleware_class配置
MIDDLEWARE_CLASSES = (

    '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.doc.XViewMiddleware',

    'django.middleware.common.CommonMiddleware',

    'cms.middleware.page.CurrentPageMiddleware',

    'cms.middleware.user.CurrentUserMiddleware',

    'cms.middleware.toolbar.ToolbarMiddleware',

    'cms.middleware.language.LanguageCookieMiddleware',

)
新加配置TEMPLATE_CONTEXT_PROCESSORS
TEMPLATE_CONTEXT_PROCESSORS = (

    'django.contrib.auth.context_processors.auth',

    'django.core.context_processors.i18n',

    'django.core.context_processors.request',

    'django.core.context_processors.media',

    'django.core.context_processors.static',

    'cms.context_processors.media',

    'sekizai.context_processors.sekizai',

)
模板目录配置
#模板目录

TEMPLATE_DIRS = (.

    os.path.join(PROJECT_PATH, "templates"),

)
cms-模板
CMS_TEMPLATES = (

    ('template_1.html', 'Template One'),

    ('template_2.html', 'Template Two'),

)
install_app配置
INSTALLED_APPS = (

    'django.contrib.auth',

    'django.contrib.contenttypes',

    'django.contrib.sessions',

    'django.contrib.sites',

    'django.contrib.messages',

    'django.contrib.staticfiles',

    'cms',

    'mptt',

    'menus',

    'south',

    'sekizai',

    'cms.plugins.file',

    'cms.plugins.flash',

    'cms.plugins.googlemap',

    'cms.plugins.link',

    'cms.plugins.picture',

    'cms.plugins.snippet',

    'cms.plugins.teaser',

    'cms.plugins.text',

    'cms.plugins.video',

    'cms.plugins.twitter',

    # Uncomment the next line to enable the admin:

    'django.contrib.admin',

    # Uncomment the next line to enable admin documentation:

    # 'django.contrib.admindocs',

)

 

创建数据,cmd切换到项目根目录,创建完数据表根据提示创建后台登录用户

python manage.py syncdb --all

 

修改url路由文件 myproject/myproject/urls.py 为以下内容

from django.conf.urls.defaults import *

from django.conf.urls.i18n import i18n_patterns

from django.contrib import admin

from django.conf import settings

admin.autodiscover()

urlpatterns = i18n_patterns('',

                            url(r'^admin/', include(admin.site.urls)),

                            url(r'^', include('cms.urls')),

                            )

if settings.DEBUG:

    urlpatterns = patterns('',

                           url(r'^media/(?P<path>.*)$', 'django.views.static.serve',

                               {'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),

                           url(r'', include('django.contrib.staticfiles.urls')),

                           ) + urlpatterns

 

 

项目根目录下( myproject/ )下增加文件夹 及文件

media

static

templates/base.html

templates/template_1.html

templates/template_2.html

 

base.html

 

{% load cms_tags sekizai_tags %}

<html>

<head>

    {% render_block "css" %}

</head>

<body>

{% cms_toolbar %}

{% placeholder base_content %}

{% block base_content %}{% endblock %}

{% render_block "js" %}

</body>

</html>

template_1.html

{% extends "base.html" %}

{% load cms_tags %}



{% block base_content %}

    {% placeholder template_1_content %}

{% endblock %}

 

template_2.html

{% extends "base.html" %}

{% load cms_tags %}



{% block base_content %}

    {% placeholder template_2_content %}

{% endblock %}


运行项目 cmd 项目根目录

python manage.py runserver

 

 

浏览器打开 http://192.168.137.100:8000

后台地址为 http://192.168.137.100:8000/admin



你可能感兴趣的:(cms)