在 Django 中进行实时编辑

Posted

技术标签:

【中文标题】在 Django 中进行实时编辑【英文标题】:Live editing in Django 【发布时间】:2011-01-02 22:35:48 【问题描述】:

假设您有一张地址簿卡片。通常,这些字段以特定布局显示为静态文本(想象有多个电话号码、电子邮件等)。编辑它时,您希望使用相同的布局,但使用表单字段而不是静态文本。似乎在 Django 中执行此操作的正常方法是使用单独的视图和模板,这会迫使您复制所有布局标记(即,它不是 DRY),并更改页面以在浏览和编辑模式之间切换。

如果您可以即时切换进出编辑模式,使用 javascript 将静态文本替换为表单字段,反之亦然,并使用 Ajax 将更改发送到服务器,那就更好了。我称之为“实时编辑”,但也许有更好的术语。无论如何,在 Django 中有推荐的方法吗?

我正在考虑为每个字段呈现静态版本和可编辑版本,并根据需要使用 JavaScript 隐藏和显示它们。但是我还需要使用来自服务器的新数据更新静态字段,并且我需要考虑内联表单和图像等复杂字段(其中静态显示是 <img> 标签,并且您必须更新src 上传后)。而且我可能还需要动态添加和删除字段或字段集(再次考虑内联表单集)。

总而言之,这将需要大量代码。是否有适用于 Django 的现有解决方案或推荐的方法?否则,哪个 JavaScript 框架可能对此最有帮助?

【问题讨论】:

【参考方案1】:

我自己没有使用过,但我听说 django-inline 就是为此而设计的。

【讨论】:

【参考方案2】:

您可能还想查看 Javascript 库 jQuery 及其 inline editing capabilities。

【讨论】:

【参考方案3】:

https://pypi.python.org/pypi/django-inplaceedit#information 完全符合您的要求。

【讨论】:

以上是关于在 Django 中进行实时编辑的主要内容,如果未能解决你的问题,请参考以下文章

Django 实时作业

自己写一个网页版的Markdown实时编辑器

小技巧-使用notepad++实时编辑salt配置文件

使用Sublime Text 3进行Markdown编辑+实时预览

微信小程序如何一边看效果图一边编辑

在 Django Bootstrap Modal 窗口中编辑记录