0

我在 ShinyUI Tab1 中有一个反应式输入:

selectInput("SelectVar", choices = DropDownListForVar())

,在哪里

DropDownListForVar()) = function (){
    sqlQuery = return ( Connection, "Select var from dbo.Variables")
} ## using RODBC library

在我闪亮的应用程序中,我还从 Tab2 更新 dbo.Variables 表。问题是我无法从 Tab1 中看到 dbo.Variables 中的更新值,除非我重新启动应用程序。

有任何想法吗?

4

2 回答 2

0

如果没有可重现的示例,很难调试。我的猜测是您缺少数据检索的反应性上下文selectInput请确保updateSelectInput在服务器内部使用响应式表达式更新下拉列表并获取数据。此外,为了实现这个目标,您需要在数据库更新时自动通知您的 Shiny App,这可能很难实现。我建议使用操作按钮或计时器触发查询 ( reactiveTimer)

于 2018-07-31T09:02:40.823 回答
0

updateSelectInput在server.R中使用过:

updateSelectInput(session ,"SelectVar", choices = DropDownListForVar())

更新“SelectVar”后触发,它工作正常。

就我而言,了解数据库何时更新很容易,因为一次只有一个用户在单击按钮时添加记录。谢谢!

于 2018-07-31T11:02:12.307 回答