在我的闪亮应用程序中,我希望有一个textarea字段,允许用户提供文本输入。这可以通过以下方式完成:
ui.R:
tags$textarea(id="item",rows=3,cols=40,placeholder="Type your message...")
verbatimTextOutput("news")
server.R:
output$news <- renderText(input$item)
使用此代码,我只能看到应用程序当前会话中的文本输入。我的目标是,在应用程序中永久保存用户文本输入(用户提供文本输入,提交和数据将永久显示在应用程序中)。 这有可能闪亮吗?我的想法是以googlesheets等全球方式存储数据。
答案 0 :(得分:0)
一种选择是将文本条目作为纯文本文件写入磁盘,可能每次用户选择(例如,通过点击“提交”按钮)。您可以使用actionButton
并使用observeEvent
包含要保存到磁盘的代码。
请注意,您需要具有唯一的文件名以避免覆盖。您可以使用时间戳或查看uuid
包以生成随机名称。
如果您对数据库更熟悉,您可以设置一个SQL表并为每个用户提交附加一行(这将更加可靠,允许您使用它存储元数据,并避免使用该文件命名上面的问题)。
Shiny本身不是为存储数据而设计的,尽管作者已经写了一些建议的方法(available here)。