我闪亮的网络应用程序将 table 写入了哪里?
Where did my shiny web app write the table to?
我试图制作一个闪亮的网络应用程序,我想为此记录每个在线数据输入并将它们附加到一个 .csv 文件中。
我当前的 server.R 代码如下所列。当我在 RStudio 中单击 "Run App" 时,它可以附加到我本地包文件夹中的 csv 文件。但是在我将它们上传到 https://brianzhang1994.shinyapps.io/Anqi/ 之后,我不知道闪亮的应用程序将 table 写到了哪里。即使我下载了捆绑文件,里面的 .csv 文件也和我上传时完全一样。
我该如何解决这个问题?
library(shiny)
shinyServer(function(input, output) {
output$tableforpatient <- renderDataTable({
patientall <- read.table("brian.csv")
patient <- data.frame(firstname=input$firstname,
lastname=input$lastname,
dob=input$dob,
number=paste0("+1",input$numbers),
email=input$email,
joined=Sys.Date())
write.table(patient, file = "brian.csv", sep = ",", append = TRUE,
row.names = FALSE, col.names = FALSE)
patient
})
})
您可能想使用 reactiveValues
:
shinyServer(function(input, output) {
my <- reactiveValues(patientall=read.table("brian.csv"))
output$tableforpatient <- renderDataTable({my$patientall})
observeEvent(input$submit, {
patient <- data.frame(firstname=input$firstname,
lastname=input$lastname,
dob=input$dob,
number=paste0("+1",input$numbers),
email=input$email,
joined=Sys.Date())
my$patientall <- rbind(my$patientall,patient)
})
})
注意提交操作按钮的用法以避免创建不完整的患者
我试图制作一个闪亮的网络应用程序,我想为此记录每个在线数据输入并将它们附加到一个 .csv 文件中。
我当前的 server.R 代码如下所列。当我在 RStudio 中单击 "Run App" 时,它可以附加到我本地包文件夹中的 csv 文件。但是在我将它们上传到 https://brianzhang1994.shinyapps.io/Anqi/ 之后,我不知道闪亮的应用程序将 table 写到了哪里。即使我下载了捆绑文件,里面的 .csv 文件也和我上传时完全一样。
我该如何解决这个问题?
library(shiny)
shinyServer(function(input, output) {
output$tableforpatient <- renderDataTable({
patientall <- read.table("brian.csv")
patient <- data.frame(firstname=input$firstname,
lastname=input$lastname,
dob=input$dob,
number=paste0("+1",input$numbers),
email=input$email,
joined=Sys.Date())
write.table(patient, file = "brian.csv", sep = ",", append = TRUE,
row.names = FALSE, col.names = FALSE)
patient
})
})
您可能想使用 reactiveValues
:
shinyServer(function(input, output) {
my <- reactiveValues(patientall=read.table("brian.csv"))
output$tableforpatient <- renderDataTable({my$patientall})
observeEvent(input$submit, {
patient <- data.frame(firstname=input$firstname,
lastname=input$lastname,
dob=input$dob,
number=paste0("+1",input$numbers),
email=input$email,
joined=Sys.Date())
my$patientall <- rbind(my$patientall,patient)
})
})
注意提交操作按钮的用法以避免创建不完整的患者