在闪亮的r

时间:2015-12-08 00:12:45

标签: r shiny shinydashboard dt

我在第一个数据表中的闪亮应用程序中有两个数据表我可以编辑,添加,删除数据非常好,但在第二个数据表中,当我想选择一行来编辑表时,它没有显示任何内容textinput编辑它。 我认为这是因为相同功能中某些参数的名称相似。但我不知道我的问题在哪里?以下是CRUD

的链接

第一个数据表的更新功能如下:

 UpdateInputs <- function(data, session) {
   updateTextInput(session, "id", value = unname(rownames(data)))
   updateTextInput(session, "name", value = unname(data["name"]))
   updateCheckboxInput(session, "used_shiny", value = as.logical(data["used_shiny"]))
   updateSliderInput(session, "r_num_years", value = as.integer(data["r_num_years"]))
 }

UpdateData <- function(data) {
   data <- CastData(data)
   responses[row.names(responses) == row.names(data), ] <<- data
 }

第二个数据表的类似新函数

UpdateInputs1 <- function(data, session) {
   updateTextInput(session, "id1", value = unname(rownames(data)))
   updateTextInput(session, "name1", value = unname(data["name1"]))
 }


 UpdateData1 <- function(data) {
   data <- CastData1(data)
   responses2[row.names(responses2) == row.names(data), ] <<- data
 }

Server.R

# Press "New" button -> display empty record
  observeEvent(input$new, {
    UpdateInputs(CreateDefaultRecord(), session)
  })
 # Select row in table -> show details in inputs
  observe({if (length(input$responses_rows_selected) > 0) 
    { 
    data <- ReadData()[input$responses_rows_selected, ] 
    UpdateInputs(data, session) }
    })

# Press "New" button -> display empty record
  observeEvent(input$new1, {
    UpdateInputs1(CreateDefaultRecord1(), session)
  })
 # Select row in table -> show details in inputs
  observeEvent(input$responses2_rows_selected, {
    if (length(input$responses2_rows_selected) > 0) {
      data <- ReadData1()[input$responses2_rows_selected, ]
      UpdateInputs1(data, session)
    }})

0 个答案:

没有答案