2011-12-10 13 views
1

Я читал это installation guide, чтобы установить tinymce с django. Во-первых, он не работал и, во-вторых, кажется, что он связан только с учетной записью администратора. Более того, другие блоги о интеграции tinymce и django также ориентированы только на учетную запись администратора.Как использовать tinymce в django для не admin страниц

Я в основном делаю приложение для блога, и я хочу предоставить некоторые основные функции tinymce, а не весь материал. Что мне делать? Должен ли я переключиться на другой текстовый редактор.

ответ

3

я бы предложил не делать что-либо вообще на стороне сервера, включают в себя файлы JS и используйте обычный JS-init для создания виджетов.

+0

Да, спасибо, я сделал именно это сейчас ... Но как насчет проверки орфографии? Поскольку изначально TinyMCE предлагает php spellchecker, и на данный момент у меня есть только поддержка python, так как я могу связать spellchecker на основе python, например pyEnchant [1]? [1] http://packages.python.org/pyenchant/ – Sachin

2

Попробуйте:

class MyForm(forms.Form): 

    def __init__(self, *args, **kwargs): 
     super(MyForm, self).__init__(+args, **kwargs) 
     self.fields['FIELD_NAME'].widget = TinyMCE() 
+0

Для этого мне просто нужно установить приложение TinyMCE? Прямо сейчас я установил приложение и добавил в файл sttings.py. Я также добавил файлы js в свой статический каталог. в структуре каталогов/static/js/tiny_mce Мне нужно что-то делать – Sachin

+0

Я так думаю, но у установки есть тестовая страница https://github.com/aljosa/django-tinymce/blob/master/docs/installation .rst – Goin

1

Как mentioned in the docs вы должны specify the widget в своем классе формы:

from tinymce.widgets import TinyMCE 

class MyForm(ModelForm): 
    html = forms.CharField(widget=TinyMCE()) 
+0

Это то же самое, что мой ответ, я так думаю – Goin

+0

Оба должны работать, да. Хотя я думаю, что указание виджета непосредственно в определении поля немного интуитивно. Кроме того, это метод, документированный в документах django-tinymce. – arie