Настройки TinyMCE в Мезонине

У меня есть мезонин 4.2.3 на Django 1.10.7 и Python 3.6.2.

Мезонин пришел с редактором TinyMCE в админке. Я не уверен, какая версия в редакторе, но я думаю, что это 4+. Редактор по умолчанию был довольно простым, поэтому я хотел добавить больше функциональности.

Мезонин, очевидно, использует свои собственные настройки для TinyMCE. Она не похожа на ту, на которую ссылаются документы TinyMCE, и не использует django-tinymce.

Я не очень хорошо разбираюсь в JavaScript. Как только я нашел нужный файл, я скопировал и вставил Classic js для плагинов и панелей инструментов со смешанными результатами:

РАБОТАЕТ жирным шрифтом, курсивом, подчеркиванием, зачеркиванием, вправо, влево, по центру и полностью выровнять, увеличить и уменьшить отступ, найти и заменить, скопировать, шрифты, код, предварительно, заголовки, вставить изображение, распечатать, просмотреть

НЕ РАБОТАЕТ цвет шрифта, цвет фона, вставка видео (5 мг слишком много!?), вырезать, вставлять, цитаты

Вот действительно странная вещь: в редакторе и в окне предварительного просмотра шрифт и цвет фона работают нормально. Но когда я открываю сайт, ничего, и когда я возвращаюсь к редактору, больше нет никаких признаков какого-либо цвета. И наоборот, в редакторе вы не можете отличить Code от Pre, но на веб-сайте они выглядят по-разному и так, как должны. Теперь я думаю, что это может быть проблема CSS, но я еще не проверял это. Я все еще вижу, что работает, а что нет.

После выделения текста очень трудно выбрать из выбора. Для этого требуется три или более кликов. Я вернулся к настройке "content css", которая была у них изначально, но цветной шрифт и bg по-прежнему не работают. Я также перезапустил сервер безрезультатно. У меня есть подушка. Я не уверен, что делать дальше.

Я отправил это в мезонинную группу, но не получил ответа. Я также написал в TinyMCE, и они сказали, что, поскольку у них нет знаний о мезонине, я должен пойти туда.

Обновить

Хорошо, мой плохой, я забыл включить код. Вот оригинальный код по умолчанию:

var tinymce_config = {
    height: '500px',
    language: language_codes[window.__language_code] || 'en',
    plugins: [
    "advlist autolink lists link image charmap print preview anchor",
    "searchreplace visualblocks code fullscreen",
    "insertdatetime media table contextmenu paste"
],
link_list: window.__link_list_url,
relative_urls: false,
convert_urls: false,
menubar: false,
statusbar: false,
toolbar: ("insertfile undo redo | styleselect | bold italic | " +
          "alignleft aligncenter alignright alignjustify | " +
          "bullist numlist outdent indent | link image table | " +
          "code fullscreen"),
file_browser_callback: custom_file_browser,
content_css: window.__tinymce_css,
valid_elements: "*[*]"  // Don't strip anything since this is handled by bleach.
};

Это ссылка на код из TinyMCE, который я использовал

https://www.tinymce.com/docs/demo/classic/

И вот как теперь выглядит мой код

var tinymce_config = {
    height: '500px',
    language: language_codes[window.__language_code] || 'en',
    plugins: [
        "advlist autolink autosave link image lists charmap print preview hr anchor pagebreak",
        "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
        "table contextmenu directionality emoticons template textcolor paste fullpage textcolor colorpicker textpattern"
    ],
    link_list: window.__link_list_url,
    relative_urls: false,
    convert_urls: false,
    menubar: false,
    statusbar: false,
    toolbar1: "newdocument fullpage | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | styleselect formatselect fontselect fontsizeselect",
    toolbar2: "cut copy paste | searchreplace | bullist numlist | outdent indent blockquote | undo redo | link unlink anchor image media code | insertdatetime preview | forecolor backcolor",
    toolbar3: "table | hr removeformat | subscript superscript | charmap emoticons | print fullscreen | ltr rtl | visualchars visualblocks nonbreaking template pagebreak restoredraft",
    // content_css: [
    //     '//fonts.googleapis.com/css?family=Lato:300,300i,400,400i',
    //     '//www.tinymce.com/css/codepen.min.css'],
    file_browser_callback: custom_file_browser,
    content_css: window.__tinymce_css,
    valid_elements: "*[*]"  // Don't strip anything since this is handled by bleach.
};

С тех пор я обнаружил, что относительно легко сделать одну из этих вещей самостоятельно. Есть уроки YouTube о том, как. Для меня проблема при погружении в эту опцию заключается в том, что мезонин рассеял TinyMCE по всей программе, в том числе внутри grapelli и filebrowser, поэтому я не уверен, как делать хирургическое удаление всего этого, и при этом я не знаю, какой вид побочного ущерба может привести,

1 ответ

Решение

Если вы перейдете по ссылке в моем ответе на комментарий Хэлфера, то увидите, что я наконец-то получил рабочий ответ. Я надеюсь, что это помогает другим.

Другие вопросы по тегам