zoukankan      html  css  js  c++  java
  • 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



  • 相关阅读:
    C++中用Int转成bool时,只有0是false,其他都是true。这个和其他语言很不一样,注意不要掉坑里了。
    C# 获取动态验证码?
    Silverlight单元格事件
    LDAPHelper
    Perl内部保留变量(系统变量)
    WebSphere MQ基础命令
    老鼠, 老虎傻傻分不清楚之Double.NaN
    TextBlock or Label?
    如何阅读代码
    EDID
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3343428.html
Copyright © 2011-2022 走看看