Найти - Пользователи
Полная версия: django-tinymce и django-admin
Начало » Django » django-tinymce и django-admin
1
OZION
Не получается подключить файл с параметрами для tinymce

установил django-tinymce

в admin.py
from django.contrib import admin
from django.db import models
from django import forms
from tinymce.widgets import TinyMCE
from vinil4you_project.cms.models import Action

class ActionAdminForm(forms.ModelForm):
short_description = forms.CharField(label=u"Короткое описание", widget=TinyMCE())
description = forms.CharField(label=u"Описание",)

class Meta:
model = Action

class ActionAdmin(admin.ModelAdmin):
fieldsets = [
('', {"fields": ("active", "title")}),
('Главная', {"fields": ("index_name" , "short_description")}),
('Акция', {"fields": ("name", "description")}),
]
form= ActionAdminForm

class Media:
js = ('/static/js/tiny_mce/textareas.js')

admin.site.register(Action, ActionAdmin)
Хочу настроить параметры tinymce для поля short_description в файле textareas.js но когда я ввожу любые параметры в textareas.js ничего не происходит. (пути к файлам правильные, параметры беру из примеров офф сайта tinymce)
В документации к django-tinymce прочитал про “Creating external link and image views” но как это работает так и не понял.
Подскажите советом как подключить файл с настройками для конкретного поля short_description
OZION
Не ужели никто не использует django-tinymce ?
romankrv
admin.site.unregister(Action, ActionAdmin) try it?
OZION
К сожалению не помогло.
ph0en1x
Я подключил так:
class PostAdmin(admin.ModelAdmin):
fieldsets = (
(None, {'classes': ['edit'], 'fields': ('content','title','tags','pubdate')}),
)
class Media:
js = ['http://127.0.0.1:8000/media/tiny_mce/tiny_mce.js', 'http://127.0.0.1:8000/media/textarea.js']

admin.site.register(Author)
admin.site.register(Post, PostAdmin)
вот только не совсем понимаю как отображать в шаблоне потом на выходе такое:
<p style="text-align: center;"><span style="text-decoration: line-through;"><span style="text-decoration: underline;"><em><strong>ZXCZXczXczxCZXc</strong></em></span></span></p>
как его теперь в нормальный html преобразовать?

upd: вопрос снимается
решение: {% autoescape off %}{{ post.content }}{% endautoescape %}
OZION
ph0en1x
Да но так у тебя конфигурация из файла применяется ко всем textarea полям, а если надо каждому полю свою кофигурацию?
ph0en1x
OZION тогда наверно не подойдёт, я сам долго мучался но заработало только так.
OZION
В общем разобрался.
Подрубил за одно граппелли и файлбраузер
в admin.py
class ActionAdminForm(forms.ModelForm):
short_description = forms.CharField(label=u"Короткое описание" , widget=TinyMCE(attrs={'id':"action_short_description"}))

class Media:
js = ['/static/js/tiny_mce/config.js',]
а в файле config.js :

tinyMCE.init({
language : "ru",
theme : "advanced",
mode : "exact",
elements : "action_short_description",

width : "300",
height : "250"

});
как видно конфигурация для нашей формы задается через id
По умолчанию id формы равно ее имени т.е. в моем случае оно было бы “short_description” , но по скольку у меня много других форм “short_description” в других моделях, а файл с настройками tinymce я буду использовать один то я задал вручную id: attrs={'id':“action_short_description”}

в config.js стоит обратить внимание что используется mode : “exact”, а не mode : “textareas”,
а так же идет перечисление полей которые должны использовать эти настройки elements : “action_short_description”,
OZION
attrs={'id':"action_short_description"}
Работает не так как хотелось бы. Во время возвращения данных формы на оброботку на сервер сервер ожидает форму с id равным имени модели, в моем случае сервер ожидает возвращение формы id=short_description а не action_short_description и поэтому сохранения в бд не происходит.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB