在SHINY中的用户会话之间共享反应性数据集 [英] Sharing reactive data sets between user sessions in Shiny
本文介绍了在SHINY中的用户会话之间共享反应性数据集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
master
,则后续会话不会轮询。
是否有更简单的方法可以在不处理此主关系的情况下实现相同的结果?
这几乎类似于代表所有客户端/会话工作的全局函数内部的需要被动调用。
推荐答案
我希望我理解这个问题。我假设所有会话和所有连接的数据集都是相同的。即:如果一个用户更新了数据集,那么它是否也应该针对所有其他会话进行更新?如果是这种情况,我只需在每次某个用户更新数据库时从数据库中读取并写入该数据库即可。如果您有MySQL数据库,您可以使用它。或者,您可以在应用程序中使用特定于应用程序的SQLite数据库文件,并且可以将其与server.r
和ui.r
文件以及所有其他特定于应用程序的文件一起保存。
另一个选项可能是这样。
此外,在您的server.r
文件中,您放在shinyServer()
函数中的任何内容都将在每次创建会话时运行(即,每次用户将他们的浏览器指向您的应用程序时)。您放在shinyServer()
函数之外的任何内容(例如,在最开始时)只会在runApp()
命令初始化应用程序时运行一次。因此,如果您将数据集加载到shinyServer()
函数之外一次,并将其保存到全局环境变量中,那么所有会话都应该可以访问它。每个会话还需要将其重新保存到全局环境中。
assign("main_df", df, envir = .GlobalEnv)
这篇关于在SHINY中的用户会话之间共享反应性数据集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文