【发布时间】:2016-12-04 03:49:09
【问题描述】:
我正在尝试将 DataTable 输出呈现给 Shiny。请在下面找到我的用例的解释:
- 连接到我的数据库并将表数据获取到
df变量。 - 将选择输入文本框中的选定输入发送到服务器脚本。
-
服务器脚本应该接受这个输入并获取数据。
ui.R
library(shiny) library(RODBC) library(DBI) # Establishing connection to ORE environment dbconnect <- odbcConnect("orecloud", uid="XXXX", pwd="XXXXX", believeNRows=FALSE) # Preparing data frames to get the data and show in select input pick list df <- data.frame() df <- sqlQuery(dbconnect,"SELECT distinct cpan FROM TABLE ") shinyUI(fluidPage( headerPanel("ORE XXX Summary"), sidebarLayout( sidebarPanel( helpText("Please select Patient Details.."), selectInput("CPAN", label = "Choose patient", choices = df, selected = NULL), submitButton(text = "Submit", icon = NULL)), mainPanel( dataTableOutput("tableoutput") ) ) ))
server.R
- 服务器脚本应该接受输入并从表中查询数据
- 将选中的数据渲染到 UI
-
如果我在 UI 中更改值,那么它应该显示选定的输入数据。
library(RODBC) shinyServer( function(input, output) { dbconnect <- odbcConnect("orecloud", uid="oracle", pwd="Edvenswa2016", believeNRows=FALSE) df2 <- data.frame() input_var <- input$CPAN print (input_var) my_query <- paste("select * from CYTOKINE where CPAN= ", input_var) print(myquery) df2 <- sqlQuery(dbconnect,myquery) output$tableoutput <- renderDataTable({df2}) } )
【问题讨论】: