Python项目中用富文本编辑器展示精美网页

富文本编辑器实现效果图:

左侧编辑区域,右侧渲染到HTML显示效果,除了渲染时候代码样式有所不同,其他标题、文字、图片基本满足所见即所得的效果


640?wx_fmt=jpeg


下面讲解富文本编辑器在Django项目中如何使用


1、前端页面引入js文件:

所用编辑器为tinymce.js,引入两个js文件

 
 
<script src="/static/tinymce/tinymce.min.js"></script><script src="/static/tinymce/tinymce_setup.js"></script></script>
<script src="/static/tinymce/tinymce_setup.js"></script>


2、html代码布局:

左侧编辑区域,右侧渲染后预览区域

下面div左浮动,里面的textarea是富文本编辑区域,注意id要用rich_content,name也要加, {{ content }}是我在提交时候后端返回的数据,方便重新在编辑区域渲染数据

submit通过表单默认的提交方式向后端发post请求传数据

 
 
<div class="form-group" style="float:left">  <form action="/webproduct/4/" method="post">   <label>内容:</label>   <textarea class="input_area" id="rich_content" name="content" >{{ content }}</textarea>   <input type="submit" value="提交">  </form></div>"form-group" style="float:left">
  <form action="/webproduct/4/" method="post">
   <label>内容:</label>
   <textarea class="input_area" id="rich_content" name="content" >{{ content }}</textarea>
   <input type="submit" value="提交">
  </form>
</div>


下面是右侧展示的div,右浮动,左右浮动为了更好地对比效果,不用来回滑动滚动条,返回的content其实就是html字符串,我们渲染到浏览器即可

 
 
<div class="box" style="margin-bottom: 200px;float:right;"> {{ content|safe }}</div>"box" style="margin-bottom: 200px;float:right;">
 {{ content|safe }}
</div>


3、Django后端代码


@csrf_exempt是ajax和form表单的post请求csrf解决办法,如果是form表单的post请求,也可以在form中加{%  csrf_token %}

前端是form表单请求,后端只需要根据键从表单中读数据就行,我们的富文本编辑器name属性值为content,则直接get("content")即可


 
 
@csrf_exempt@login_requireddef webproduct_manage4(request):  content = request.POST.get('content')  return render(request,"webproduct/webproductContent3.html",{"content":content})
@login_required
def webproduct_manage4(request):
  content = request.POST.get('content')
  return render(request,"webproduct/webproductContent3.html",{"content":content})


返回到前端的content,即富文本的html字符串,我们分别在编辑器和右侧都进行了渲染,即可见到最开始的效果


本文富文本编辑器仅测试部分常见效果没有什么问题,另外富文本编辑器也有CKeditor、Ueditor等等,如果大佬们有关于这些的开源demo,也欢迎学习交流


python爬虫人工智能大数据公众号

640?wx_fmt=gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值