问题描述
我正在构建一个闪亮的应用程序,该应用程序可以根据用户上传的文件创建多个文件。创建的文件具有相同的名称,这可以使用户下载文件时以与数据无关的信息结尾。
如何为每个用户创建一个独立的目录?
到目前为止,我已经找到了创建存储文件目录的下一个解决方案:
def get_user(phone,nil) do
user = %User{phone: phone}
Data.insert({phone,user})
user
end
def get_user(phone,%User{} = user),do: user
但是我已经读到,如果我将应用程序上传到服务器,则可能无法正常工作。
解决方法
This是我在RStudio社区中为我工作的答案:
通过RStudio社区的@pieterjanvc:
设置工作目录可能无法像Shiny中那样工作。我建议您根据用户的会话令牌生成一个文件夹,该文件夹是在用户连接到Shiny应用程序时生成的,并且位于会话变量中。
library(shiny)
ui <- fluidPage(
)
server <- function(input,output,session) {
dir.create(session$token)
file.create(paste0(session$token,"/userFile.txt"))
}
shinyApp(ui,server)
创建目录后,可以再次使用令牌(该用户的基本文件夹的名称)来保存该文件中的任何文件。您应该记得在任务完成后清除文件夹,否则很快就会有很多文件夹。
如果有人遇到与我相同的问题,我希望这个答案会有所帮助。