2010-04-22 6 views
3

Cette question est d'une recrue Django Django-cms essayant d'installer django-CMS sur un compte d'hébergement mutualisé. Voici ce que je l'ai fait jusqu'à présent:Besoin d'aide pour installer django-cm

  1. Django a été installé dans ~/.local/lib/python (en utilisant python 2.4.3)

  2. Flup a également été installé dans un même lieu

  3. créé mon application (site) répertoire - ~/.local/lib/python/Eck

  4. téléchargé et extrait django-CMS dans ~/.local/lib/python/Eck

  5. Copié CMS, MPTT et dossiers d'éditeur dans ~/.local/lib/python /Eck

C'est là que je suis coincé. Je ne sais pas quoi faire d'ici. Dois-je copier le contenu du dossier exemple dans ~/.local/lib/python/eck et personnaliser le fichier settings.py existant? Qu'en est-il des autres fichiers et dossiers. Lesquels dois-je copier dans "eck?"

Il y a un dossier « SampleApp » dans le dossier « exemple ». Qu'est-ce que je fais avec ça?

Merci

TIA

Répondre

1

Avez-vous d'abord obtenu Django et en cours d'exécution, sans Django-CMS? Je m'inquiéterais de cela en premier, et ensuite je m'inquiéterais de l'installation de Django-CMS. Vous devriez être capable de créer un projet quelque part en dehors de votre webroot en utilisant les commandes django-admin.py. Puis configurez votre serveur pour qu'il pointe vers lui - probablement sur Apache avec mod_wsgi ou mod_python. Je pense que le premier puisque vous installez un paquet d'outils wsgi, mais assurez-vous que le fournisseur d'hébergement partagé a mod_wsgi installé.

En outre, accordé Je ne sais pas ce que votre environnement d'hébergement est comme, mais vous ne devriez pas avoir besoin de créer votre projet dans votre répertoire Python. Voir cette réponse à propos de where to put your project. Après avoir installé Django-CMS plusieurs fois, à différents niveaux de savoir-faire Django, je vous suggère fortement de faire en sorte que votre projet Django soit opérationnel en premier!

0

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.

Questions connexes