Quelqu'un peut-il décrire comment j'implémente le ckeditor dans django.contrib.flatpages?Quelqu'un peut-il décrire comment j'implémente le ckeditor dans django.contrib.flatpages?
Répondre
Quelques étapes pour y arriver. D'abord, assurez-vous que ckeditor.js est servi d'une manière ou d'une autre à partir de django. Les informations à ce sujet peuvent être trouvées au http://docs.djangoproject.com/en/1.2/howto/static-files/#howto-static-files. Pour cet exemple, je vais le servir à partir de 127.0.0.1:8000/js/ckeditor/ckeditor.js.
Vous devez remplacer le modèle de formulaire de changement de page standard. Dans votre répertoire de modèles, créez un fichier dans le sous-répertoire suivant: < vos modèles dir > /admin/flatpages/flatpage/change_form.html
Créer le texte suivant à l'intérieur:
{% extends "admin/change_form.html" %}
{% block extrahead %}
{{ block.super }}
<script type="text/javascript" src="/js/ckeditor/ckeditor.js"></script>
<script type="text/javascript" charset="utf-8">
var $ = jQuery = django.jQuery.noConflict(); // Use djangos jquery as our jQuery
</script>
<script type="text/javascript" src="/js/ckeditor/adapters/jquery.js"></script>
<script type="text/javascript" charset="utf-8">
$(document).ready(function(){
$('textarea').ckeditor({
"skin":"kama",
"width" : 850,
// "toolbar" : "Basic", // uncomment this line to use a basic toolbar
});
});
</script>
{# Adding some custom style to perty thing up a bit. #}
<style type="text/css">
div>.cke_skin_kama{
width: 100%;
padding: 0!important;
clear: both;
}
</style>
{% endblock %}
Les premières lignes contiennent Le texte par défaut de django pour le bloc extrahead. Le reste du script importe les javascripts ckeditor et utilise jQuery déjà importé par django avec l'adaptateur ckeditor jQuery. Enfin, nous finissons par forcer un peu de style sur la page, car par défaut, les choses semblent un peu brouillon. À partir de là, vous pouvez rapidement modifier la barre d'outils en implémentant différentes options dans l'appel de ckeditor. Aller à une barre d'outils simple est probablement quelque chose dont vous aurez besoin si des personnes non-techniques vont éditer ces pages. Vous pouvez simplement décommenter cette ligne dans le code ci-dessus pour l'implémenter.
trouvé une bonne solution:
Ceci est un peu délicat. J'ai admin.autodiscover() dans mon urls.py, donc il va automatiquement créer un admin pour les flatpages comme défini dans django.contrib.flatpages. Je ne veux certainement pas aller piratage quelque chose qui est venu avec Django, ni je ne veux donner la commodité de l'autodiscover.
http://www.elidickinson.com/story/django-flatpages-and-ckeditor/2011-11
Pour une solution sans vérification de piratage de modèle cette page: http://johansdevblog.blogspot.it/2009/10/adding-ckeditor-to-django-admin.html
je signaler ici l'exemple, si le lien descend. Ceci est un modèle simple.
from django.db import models
class SampleModel(models.Model):
title = models.CharField(max_length=50)
text = models.TextField()
def __unicode__(self):
return self.title
Voici comment ajouter un support ckeditor à un type de champ spécifique, dans ce cas un TextArea.
from sampleapp.models import SampleModel
from django.contrib import admin
from django import forms
from django.db import models
class SampleModelAdmin(admin.ModelAdmin):
formfield_overrides = { models.TextField: {'widget': forms.Textarea(attrs={'class':'ckeditor'})}, }
class Media:
js = ('ckeditor/ckeditor.js',) # The , at the end of this list IS important.
admin.site.register(SampleModel,SampleModelAdmin)
A ce stade, les ckeditor.js vérifieront toutes les textarea avec l'attribut class réglé sur « ckeditor ».
- 1. comment décrire cette série dans le code?
- 2. Comment décrire m2m triple-join table dans le modèle (Django)
- 3. Comment définir et décrire ces différents points dans le temps?
- 4. Comment décrire le paramètre d'entrée dans un service Web RESTful
- 5. asp.net mvc ckeditor dans le dialogue jquery
- 6. comment puis-je désactiver le bouton Enregistrer dans ckeditor?
- 7. Comment personnaliser le menu Styles de CKEditor dans Joomla?
- 8. Comment remplacer le gestionnaire d'un bouton dans ckeditor?
- 9. Comment implémenter correctement CKEditor v3 dans ASP.net?
- 10. Comment intégrer CKEditor dans Asp.net MVC
- 11. Comment définir les balises autorisées dans CKEditor?
- 12. Comment utiliser le théorème Master pour décrire la récursivité?
- 13. Décrire un chemin avec GDI + dans .Net
- 14. Décrire les relations de classe dans ruby
- 15. Comment décrire un UIElement en Partial-Trust?
- 16. Comment intégrer CKFinder avec CKEditor?
- 17. Comment décrire une fonction locale à (trace)?
- 18. CKeditor dans Jquery Boîte simple
- 19. Comment décrire une colonne d'énumération dans une migration Rails 3?
- 20. Corps persistant dans le style en ligne dans ckEditor
- 21. ckeditor: le plugin mediaembed ne fonctionnera pas
- 22. Comment déterminer le nom de programme par exemple CKEditor
- 23. Comment rendre le texte de rendu CKEditor avec un CSS?
- 24. jquery langue ckeditor dir
- 25. Décrire un nouveau composant Joomla
- 26. CKEditor et MVC
- 27. ckeditor en asp.net
- 28. ASP.NET MVC Ajax et le CKEditor
- 29. Désactivation CKEditor, Réactivation JS
- 30. CKEditor Custom Plugins Button
J'aimerais voir la solution de piratage non-modèle à cela, mais le lien est mort maintenant. –
J'ai trouvé cela du même auteur: https://gist.github.com/elidickinson/1379652 – pymarco