Question

J'ai un site django en cours d'exécution tout à fait heureux avec django-cm, mais maintenant je veux inclure certains de mon javascript fantaisie en utilisant jQuery. Je suis assez nouveau pour django, donc mes problèmes pourraient découler de cette situation.

Django CMS utilise jQuery lui-même, et donc si j'ajoute jquery à l'en-tête - les choses se rathter sans surprise. Comment puis-je ajouter mon propre jQuery sans affecter django-CMS?

Au moment où mes fichiers javascript sont stockés dans la racine de médias que je l'ai défini dans les projets settings.py et, comme mentionné, je les référence dans l'en-tête.

Comme je l'ai lu cela, il semble une question stupide, mais je suis encore perplexe.

EDIT :: Certains code

J'ai une racine de support défini:

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

et dans mon modèle de base comprend l'en-tête

<script src="/media/javascript/jquery.js" type="text/javascript"></script>
<script src="/media/javascript/application.js" type="text/javascript"></script>

Javascript dans les travaux de application.js, mais quand les choses django-CMS est en rupture. Par exemple, en essayant d'ajouter un plug-in à un résultat d'espace réservé dans:

Uncaught TypeError: Property 'type' of object function ( selector, context ) {
        // The jQuery object is actually just the init constructor 'enhanced'
        return new jQuery.fn.init( selector, context );
    } is not a function

Je suppose que c'était parce que les deux jQuerys étaient en conflit les uns avec les autres

:: AUTRE EDIT :: Je devrais probablement ajouter que j'utilise django pour héberger les fichiers statiques car cela est encore en développement ...

Était-ce utile?

La solution

Une solution simple: garder votre bibliothèque JQuery dans l'en-tête et placez tous les autres votre JS au boottom de la page, juste avant </body>. Dans ce cas en mode admin, votre lib jQuery sera overrided par la copie admin, puis tout votre code sera ajouté revenir.

Autres conseils

Eh bien, reliant les jQuery django-CMS pour empaqueté fait tout fix ...

Hélas, il utilise la version 1.3.2, mais je pense que je vais répondre à cela plutôt que d'essayer et de mettre à niveau django-CMS pour l'instant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top