刷新从 RODBC 检索到的闪亮 DropDownList 上的 selectInput
Posted
技术标签:
【中文标题】刷新从 RODBC 检索到的闪亮 DropDownList 上的 selectInput【英文标题】:Refresh selectInput on shiny DropDownList retrieved from RODBC 【发布时间】:2018-07-31 08:42:53 【问题描述】:我在 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 中的更新值,除非我重新启动应用程序。
有什么想法吗?
【问题讨论】:
【参考方案1】:如果没有可重现的示例,就很难调试。我的猜测是您缺少用于selectInput
或数据检索的reactive context。请确保使用updateSelectInput
更新下拉列表,并在服务器内部使用反应式表达式获取数据。此外,为了实现这个目标,您需要在数据库更新时自动通知您的 Shiny App,这可能很难实现。我建议使用操作按钮或计时器触发查询 (reactiveTimer
)
【讨论】:
【参考方案2】:我在 server.R 中使用了updateSelectInput
:
updateSelectInput(session ,"SelectVar", choices = DropDownListForVar())
在更新“SelectVar”后触发,效果很好。
就我而言,了解数据库何时更新很容易,因为一次只有一个用户在单击按钮时添加记录。谢谢!
【讨论】:
以上是关于刷新从 RODBC 检索到的闪亮 DropDownList 上的 selectInput的主要内容,如果未能解决你的问题,请参考以下文章