pythondjangodjango-tinymce

Django Tinymce Not Displaying The Rich Text Form


I want to use TinyMCE in my Django project, after doing all the necessary settings, when I visit the page, the form only render normal django form but not TinyMCE rich text form. Below are my settings.

I copied tinymce folder to media folder:

   C:/Python27/Scripts/nate/media/js/tiny_mce

Settings.py

  TINYMCE_JS_URL = '/media/js/tiny_mce/tiny_mce.js/'

  TINYMCE_DEFAULT_CONFIG = {
       'plugins': "table,spellchecker,paste,searchreplace",
       'theme': "advanced",
       'cleanup_on_startup': True,
       'custom_undo_redo_levels': 10,

}

  TINYMCE_SPELLCHECKER = True
  TINYMCE_COMPRESSOR = True

urls.py

    (r'^tinymce/', include('tinymce.urls')),

Models

    class Finmall(models.Model):
       user=models.ForeignKey(User)
       name=models.CharField(max_length=250, unique=True)
       content1 = models.TextField()
       content2 = models.TextField()

       def __unicode__(self):
           return self.user

Template

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

   {% block content %}

    <div id="postcribbody" class="wrapper">     

     <p class="list">You can make it</p>
      <form enctype="multipart/form-data"  form action="." method="POST">
          {% csrf_token %}
             {{ FinmallForm.as_p }}
  <input type="submit"  class="cribput" value="Submit"/>
      </form>
      </div>
   {% endblock %}

How can I make the content1 and content2 display TinyMCE rich text form?


Solution

  • An Example from the Documentation:

    from django import forms
    from tinymce.widgets import TinyMCE
    
    class FinmallForm(forms.ModelForm):
        ...
        content = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))
        ...
    
        class Meta:
            model = Finmall