Je suis absolument d'accord avec bennylope's answer - assurez-vous d'avoir un projet Django en cours d'exécution avant d'essayer d'incorporer django-cms.
Une fois que vous avez le squelette projet django, vous aurez probablement envie d'ajouter à la fin de votre fichier racine urls.py
:
urlpatterns += patterns('',
url(r'^', include('cms.urls')),
)
Dans votre fichier settings.py
, assurez-vous que vous avez ajouté le à la suite INSTALLED_APPS
:
'cms',
'cms.plugins.text',
'cms.plugins.picture',
'cms.plugins.link',
'cms.plugins.file',
'cms.plugins.snippet',
'cms.plugins.googlemap',
'mptt',
'menus',
'publisher',
ne vous embêtez pas la copie sur le dossier par exemple. Cependant, vous avez besoin de configurer vos modèles de CMS de départ.
Dans votre dossier de projet racine, créez un dossier templates
si vous ne l'avez pas déjà fait. Vous devez créer un fichier pour outputing le CMS, voici un bon départ:
# default.html
{% extends "base.html" %}
{% load cache cms_tags menu_tags %}
{% block menu %}
<ul id="navigation">
{% show_menu 0 100 100 100 %}
</ul>
{% endblock menu %}
{% block content %}
<ul class="breadcrumb">
<li class="you">You are here:</li>
{% show_breadcrumb %}
</ul>
<h1>{% block title %}{% page_attribute title %}{% endblock %}</h1>
<div>
<div class="placeholder" id="body">
{% placeholder "body" %}
</div>
</div>
{% endblock content %}
Assurez-vous d'ajouter
CMS_TEMPLATES = (
('default.html', gettext('default')),
)
à votre fichier de paramètres.
Vous êtes responsable de la configuration base.html
. Quelle que soit la manière dont vous l'écrivez, assurez-vous qu'elle inclut {% block content %}{% endblock content %}
quelque part afin que le contenu du modèle CMS s'affiche.
Je vous recommande en fait de ne pas copier les dossiers django-cms dans votre répertoire/eck. Ils doivent être situés où site-packages
ou l'équivalent est situé dans votre installation. Ma façon préférée de configurer ceci est de mettre django-cms dans /opt/
et ensuite utiliser un lien symbolique vers les sous-dossiers dans site-packages
. Cela peut ne pas fonctionner pour vous, contactez quelqu'un qui gère votre hébergement partagé pour lui demander quoi faire, car il est souvent différent pour chaque fournisseur. Toutefois, la clé est que vous ne voulez pas que les dossiers django-cms se trouvent dans la même zone que vos dossiers de projet. Lors de la configuration d'un projet Django, j'aime personnellement séparer les applications que j'ai spécifiquement codées pour ce projet des autres applications.