2013-04-21 17 views
7

Ich habe django-tinymce funktioniert für die Admin-Seite. Jetzt, außerhalb der Admin-Seite, erwartete ich bei Verwendung eines Modellformulars, dass der TinyMCE-Editor geladen und dem Benutzer angezeigt wurde. Dies geschah jedoch nicht. Alles, was ich sehe, ist ein einfacher Textbereich. Aber es funktioniert in der Admin-Seite.ModelForm rendert nicht TinyMCE (ReferenceError: tinyMCE ist nicht definiert)

from tinymce.models import HTMLField 
class Punch(models.Model): 
    discussion  = HTMLField() 

class PunchForm(forms.ModelForm):  
    class Meta: 
     model = Punch 

kann ich mit Firebug sehen, dass der TinyMCE-Schnipsel in den HTML hinzugefügt wird:

enter image description here

Allerdings erhalte ich eine Fehlermeldung in der Konsole:

ReferenceError: tinyMCE is not defined 

Das macht Kein Sinn, warum hat die Admin-Seite keine Probleme, das TinyMCE zu finden? Außerdem habe ich es auch mich den base.html hinzugefügt:

<script type="text/javascript" src="{{ STATIC_URL }}tiny_mce/tiny_mce.js"></script> 

und den Server kann es laden:

[21/Apr/2013 13:42:40] "GET /static/tiny_mce/tiny_mce.js HTTP/1.1" 304 0 

SO, was das Problem bitte sein könnte?

Antwort

7

oh Schatz, was für ein dummer Fehler.

So kann ich bestätigen, dass ich die js in base.html definieren muss, wie ich in meiner Frage getan habe.

<script type="text/javascript" src="{{ STATIC_URL }}tiny_mce/tiny_mce.js"></script> 

Allerdings muss dies in der Kopfzeile und nicht der Körper sein. Header wird zuerst initialisiert und daher wird es keine mehr geben ReferenceError: tinyMCE is not defined

Ich hoffe, es hilft jemand anderem.

+4

Ich habe meinen Arsch gerettet, ich war in den letzten 2 Stunden frustriert. – user1629366

Verwandte Themen