Django-CMS 2.1.3 安装指南

作者:我就是个世界 发表于:2011-04-25
啥也不说了,我终于看到了可爱的小飞马,过程太艰难了。都这个点了,总算有点成果。上图:
[img][attach]383[/attach][/img]
[b]Django-CMS 2.1.3 安装指南  [/b]
    官方英文版地址:http://readthedocs.org/docs/django-cms/2.1.3/getting_started/installation.html

环境要求:[quote]
    Python2.5(或2.x的更高版本)
    Django的 1.2.3(或1.2的更高版本)
    South 0.7.2 或高版本
    PIL 1.1.6 或更高版本
    django-classy-tags 0.2.2  或更高版本
    安装一个您项目需要的数据库(推荐使用 PostgreSQL 或 MySQL )。[/quote][separator]
    
[acronym=当您使用pip安装django CMS 的时候, Django 和 django-classy-tags 将被自动安装。]当您使用pip安装django CMS 的时候, Django 和 django-classy-tags 将被自动安装。[/acronym]

[b]在Ubuntu10.10下安装方法:[/b]
[code]
    sudo aptitude install python2.6 python-setuptools python-imaging
    sudo easy_install pip
    sudo pip install django-cms south django-appmedia
    
    sudo aptitude install python-mysqldb #安装连接库python-mysqldb 或者 python-psycopg2
[/code]
---------------------------------
[b]安装和配置:[/b]
  
    创建工程 #cd你想要创建工程的目录,创建工程目录
[code]
        cd ~/workspace
        django-admin.py startproject myproject
        cd myproject
        python manage.py runserver
[/code]
        
        在浏览器中打开 http://127.0.0.1:8000/ 你能看到“It Worked” 说明Django工作正常。
        
    修改配置文件settings.py
        进入你的工程目录,打开  ~/workspace/myproject/settings.py
        为了你的工作更加轻松方便,添加以下代码在settings.py文件的顶部:
[code]
            # -*- coding: utf-8 -*-
            import os
            gettext = lambda s: s
            PROJECT_PATH = os.path.abspath(os.path.dirname(__file__))
[/code]
            
        添加以下应用到INSTALLED_APPS中:
[code]
            'cms',
            'mptt',
            'menus',
            'south',
            'appmedia',
[/code]

        同时根据您的需求,添加以下插件中的任何一个(或全部):
[code]
            'cms.plugins.text',
            'cms.plugins.picture',
            'cms.plugins.link',
            'cms.plugins.file',
            'cms.plugins.snippet',
            'cms.plugins.googlemap',
[/code]
            
        如果你希望使用适度的工作流程,还可以添加:
            [code]'publisher',[/code]
            
          (--------- 这里注意一下,每一个应用后面的逗号千万不能少  --------- )
            
        进一步,确保你取消掉 'django.contrib.admin' 前面的注释
        
        您需要添加的Django CMS的中间件,在您的MIDDLEWARE_CLASSES中适当的位置:
[code]
            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',
                'cms.middleware.page.CurrentPageMiddleware',
                'cms.middleware.user.CurrentUserMiddleware',
                'cms.middleware.toolbar.ToolbarMiddleware',
                'cms.middleware.media.PlaceholderMediaMiddleware',
            )
[/code]

        你至少需要以下的TEMPLATE_CONTEXT_PROCESSORS(模板引擎处理器) (默认Django settings文件将不会有任何配置):
[code]
            TEMPLATE_CONTEXT_PROCESSORS = (
                'django.core.context_processors.auth',
                'django.core.context_processors.i18n',
                'django.core.context_processors.request',
                'django.core.context_processors.media',
                'cms.context_processors.media',
            )
[/code]
            
        马上就完了,指出你的 MEDIA_ROOT 路径,以使激活静态媒体文件 (如:你的图片目录,CSS文件,Javascript文件等...):
[code]
            MEDIA_ROOT = os.path.join(PROJECT_PATH, "media")
            MEDIA_URL = "/media/"
            ADMIN_MEDIA_PREFIX="/media/admin/"
[/code]
            
        现在添加一个模板目录的路径 TEMPLATE_DIRS :
[code]
            TEMPLATE_DIRS = (
                # The docs say it should be absolute path: PROJECT_PATH is precisely one.
                # Life is wonderful!
                os.path.join(PROJECT_PATH, "templates")
            )
[/code]
            
        至少为CMS_TEMPLATES添加一个模板,如:
[code]
            CMS_TEMPLATES = (
                ('template_1.html', 'Template One'),
                ('template_2.html', 'Template Two'),
            )              
[/code]    
        我们将在后面的步骤创建实际的模板文件,现在不用担心它了,简单地粘贴这些代码在您的配置文件中。
        
        django CMS允许编辑各种Django已经提供翻译的语言.它拥有实在太多的语言可以编辑了,在这里我们仅举例说明翻译成英语:
[code]
            LANGUAGES = [
                ('en', 'English'),
            ]
[/code]
        
        最后,配置你的数据库连接设置,如果你只是在本地测试,那么sqlite3是最简单的数据库配置了,但它不应该被用在生产环境中。 假如现在你希望使用sqlite3,那么你的 DATABASES 配置应该如下:
[code]
            DATABASES = {
                'default': {
                    'ENGINE': 'django.db.backends.sqlite3',
                    'NAME': os.path.join(PROJECT_DIR, 'database.sqlite'),
                }
            }
[/code]
          
---------------------------------
URL配置:

        你需要包含'cms.urls'对象在你的urlpatterns模式的后面,我们建议参照以下的urls.py开始:
[code]
            from django.conf.urls.defaults import *
            from django.contrib import admin
            from django.conf import settings

            admin.autodiscover()

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

            if settings.DEBUG:
                urlpatterns = patterns('',
                    (r'^' + settings.MEDIA_URL.lstrip('/'), include('appmedia.urls')),
                ) + urlpatterns

[/code]
  
--------------------------------
初始化数据库(同步数据库):
    此命令取决于你是 升级 安装或执行 全新安装 。 我们建议你熟悉一下 South 的工作原理或方法,因为它是一个非常强大的,简单方便的工具。 在Django CMS中广泛的使用它。
    全新安装(Fresh install)
        运行:
[code]
            python manage.py syncdb --all
            python manage.py migrate --fake
[/code]
            
        这个命令首先将会提示你去创建一个超级用户;选择‘yes',输入一个适当的用户名。
                
    升级安装(Upgrade)
        运行:
[code]
            python manage.py syncdb
            python manage.py migrate
[/code]
--------------------------------
启动并运行
    就是它了,重启你的开发服务器使用 python manage.py runserver 并在浏览器中输入http://127.0.0.1:8000 你应该可以看到可爱的小飞马了, “Welcome to the django CMS!” 的欢迎界面.
[img][attach]384[/attach][/img]

注:本站原创,转载请注明出处!

分享:

扫一扫在手机阅读、分享本文

请发表您的评论