`
somkens
  • 浏览: 7616 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Django整合tinymce富文本编辑器

    博客分类:
  • php
 
阅读更多

Django的管理界面很强大,像我这样的懒人比较喜欢,但是它的content不支持富文本,这就有了与tinymce的整合,为什么不整合别的?我喜欢tinymce! 下载tinymce:https://github.com/aljosa/django-tinymce 

解压后:

图一

将其传到你的网站文件夹里,

我的网站根目录是html,Django项目是mysite,静态文件目录是static;虚拟目录是wenv,那么在html下建立django-tinymce文件夹(其实可以随意建),图一的文件上传到django-tinymce里.

在SSH命令行下输入:

$ source wenv/bin/activate  #请输入$和#号之间的命令,wenv为虚拟目录

$ cd django-tinymce

$ python setup.py install

安装完成后,

将图一的tinymce目录及文件复制到mysite里,

目录结构:

图二

在static文件夹里建立js目录,/html/mysite/tinymce/media/中的tiny_mce复制一份到js目录.

目录结构图:

tiny_mce.js文件是从/html/static/js/tiny_mce/下复制过来,

textareas.js 的代码如下:

tinyMCE.init({

    // General options

    mode : "textareas",

    theme : "advanced",

    plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",

 

// Theme options

theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,fontselect,fontsizeselect,fullscreen,code",

theme_advanced_buttons2 : "bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,|,forecolor,backcolor",

theme_advanced_buttons3 : "tablecontrols,|,hr,sub,sup,|,charmap",

 

theme_advanced_toolbar_location : "top",

theme_advanced_toolbar_align : "left",

theme_advanced_statusbar_location : "bottom",

theme_advanced_resizing : true,

 

// Example content CSS (should be your site CSS)

//content_css : "/css/style.css",

 

template_external_list_url : "lists/template_list.js",

external_link_list_url : "lists/link_list.js",

external_image_list_url : "lists/image_list.js",

media_external_list_url : "lists/media_list.js",

 

// Style formats

style_formats : [

    {title : 'Bold text', inline : 'strong'},

    {title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},

    {title : 'Help', inline : 'strong', classes : 'help'},

    {title : 'Table styles'},

    {title : 'Table row 1', selector : 'tr', classes : 'tablerow'}

],

 

width: '700',

height: '400'

});

//代码结束

 

然后在/html/mysite/mysite/settings.py 的

INSTALLED_APPS = (

    'django.contrib.auth',

    'django.contrib.contenttypes',

    'django.contrib.sessions',

    'django.contrib.sites',

    'django.contrib.messages',

    'django.contrib.staticfiles',

    # Uncomment the next line to enable the admin:

    'django.contrib.admin',

   'tinymce',  #加上tinymce应用

    # Uncomment the next line to enable admin documentation:

    # 'django.contrib.admindocs',

    'polls', #我学习使用的

    'blog', #刚学建的非常简单的博客

)

将/html/mysite/mysite/urls.py加上:

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

成为如下代码:

from django.conf.urls import patterns, include, url

 

# Uncomment the next two lines to enable the admin:

from django.contrib import admin

admin.autodiscover()

from polls.views import index,current_datetime,hours_ahead

from blog.models import Article

 

urlpatterns = patterns('',

    # Examples:

    # url(r'^$', 'polls.views.index', name='index'),

    # url(r'^mysite/', include('mysite.foo.urls')),

    url(r'^$', 'polls.views.index'),

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

    #(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',{'document_root': 'media'}),

     #url(r'^admin/', 'polls.views.index'),

    (r'^time/$', current_datetime),

    (r'^time/plus/(\d{1,2})/$', hours_ahead),

    # Uncomment the admin/doc line below to enable admin documentation:

    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

 

    # Uncomment the next line to enable the admin:

    url(r'^admin/', include(admin.site.urls)),

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

)

 

 

在ssh下,

进入/html/mysite目录,

执行命令:python manage.py syncdb

 

进入/html/mysite/blog/目录

修改admin.py为

from blog.models import Category,Article

from django.contrib import admin

 

class TinyMCEAdmin(admin.ModelAdmin):

    class Media:

       js = ('/static/js/tiny_mce/tiny_mce.js', '/static/js/tiny_mce/textareas.js',)

 

admin.site.register(Category)

admin.site.register(Article,TinyMCEAdmin) #Artice中使用tinymce

 

 

进入django后台

分享到:
评论

相关推荐

    django-tinymce

    【django-tinymce】是一个基于Python的Django框架与TinyMCE集成的库,它使得在Django项目中集成这款强大的富文本编辑器变得更加简单。TinyMCE是一款广泛使用的JavaScript库,提供了丰富的文本编辑功能,如字体样式、...

    tinymce-django

    TinyMCE 是一个开源的富文本编辑器,支持多种格式的内容创建,如文本、图片、链接、表格等,使得在后台编辑内容时能够如同在网页上直接操作一样便捷。 Django 是一个高级的 Python Web 框架,它鼓励快速开发和干净...

    Django富文本实测

    在本文中,我们将深入探讨如何在Django框架中实现富文本编辑器的集成,特别是使用TinyMCE。Django是一个强大的Python Web开发框架,而TinyMCE是一款流行的轻量级富文本编辑器,用于在前端提供用户友好的文本编辑体验...

    Python库 | django_editorjs_parser-0.1.4.tar.gz

    在Python的开发世界中,Django框架以其高效、灵活的特点被广泛应用于后端开发,而Editor.js则是一款现代的、可配置的富文本编辑器,提供了高度自定义的界面和数据结构。当这两者结合时,可以为Web应用创建出功能强大...

    wagtailtinymce:针对Wagtail的TinyMCE编辑器集成

    TinyMCE是一个轻量级的JavaScript库,用于将网页中的文本输入框转换为功能齐全的富文本编辑器。它支持多种格式的文本编辑,如图片上传、链接插入、样式应用等,极大地提升了用户在网页上编辑内容的效率。 3. **...

    基于Python的博客设计与开发毕业设计.doc

    TinyMCE是一个富文本编辑器,它允许用户在博客中创建和编辑格式化的文本。这个编辑器集成在用户发表博文的界面中,为用户提供类似Word的编辑体验,支持文本样式、图像插入等功能。 4. **JQuery**: JQuery是一个...

    OA-Web移动端部分模块(请假、周报、通讯录、考勤).rar

    可能使用富文本编辑器如TinyMCE或CKEditor,后端处理周报的存储,可能使用RESTful API进行数据交换,使用NoSQL数据库如MongoDB或关系型数据库如MySQL存储周报内容。 3. **通讯录查询**: 移动OA中的通讯录功能使...

    北大青鸟OA系统

    7. **文档管理**:OA系统需具备文档上传、下载、版本控制和权限管理功能,可以使用第三方库如CKEditor或TinyMCE来支持富文本编辑,同时利用云存储服务如阿里云OSS或腾讯云COS存储大量文档。 8. **通知提醒**:系统...

Global site tag (gtag.js) - Google Analytics