首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenRefine -只读实例

OpenRefine -只读实例
EN

Stack Overflow用户
提问于 2018-12-17 04:22:55
回答 1查看 84关注 0票数 1

我想让一个OpenRefine实例可以用于数据探索,使用它的过滤、面形、集群和其他特性。但是用户(这将在网络上共享)不应该能够编辑任何东西。

一些想法,邀请更多或更多关于如何实施的线索:

  • 使本地项目文件夹只读。
  • 使其非持久性(即用户进行更改,OpenRefine假装继续进行,但下次当他们加载时,所有更改都消失了)。这实际上是在对接中发生的,在经历了一些挫折之后,我们学习了如何运行持久化卷的对接映像。但是,只有当关闭实例并重新启动时,数据的“重置”才会启动。我们如何使它在浏览器会话中保持非持久性?
  • 在代码中,如果有任何标志变量,根据这些变量进行编辑决策,那么我们可以稍微修改一下吗?在这条路线中,通常出现在上面的黄色警告消息说,许多被编辑的单元格可能会说“错误:编辑失败!”。我们可以把它修改成更贴切的东西,比如“对不起,在这种情况下,编辑是禁用的”。
EN

回答 1

Stack Overflow用户

发布于 2018-12-17 05:55:40

我不认为有任何内置的东西可以禁用编辑。您可以做的一件事是在后端禁用用于进行更改的所有API命令,但不能保证用户触发这些操作时UI会优雅地拒绝这些操作。

若要禁用API命令,请打开./main/webapp/modules/core/MOD-INF/controller.js文件。然后,您需要确定要禁用哪些命令。例如,您不希望用户删除项目,所以应该删除

代码语言:javascript
复制
RS.registerCommand(module, "delete-project", new Packages.com.google.refine.commands.project.DeleteProjectCommand());

这样就不可能从UI中删除项目。

您还应该禁用扩展中的命令(例如,在extensions/wikidata/module/MOD-INF/controller.js中用于维基数据扩展)。

我在这里创建了相应的增强请求:https://github.com/OpenRefine/OpenRefine/issues/1910

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53808934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档