相关疑难解决方法(0)

闪亮:下载zip档案

我无法制作闪亮的downloadHandler输出zip文件:

# server.R
library(shiny)

shinyServer(function(input, output) {  
  output$downloadData <- downloadHandler(
    filename <- function() {
      paste("output", "zip", sep=".")
    },

    content <- function(fname) {
      fs <- c()
      tmpdir <- tempdir()
      setwd(tempdir())
      for (i in c(1,2,3,4,5)) {
        path <- paste0("sample_", i, ".csv")
        fs <- c(fs, path)
        write(i*2, path)
      }
      zip(zipfile=fname, files=fs)
    }
  )
})
Run Code Online (Sandbox Code Playgroud)

而且很简单ui.R:

shinyUI(fluidPage(
  titlePanel(""),
  sidebarLayout(
    sidebarPanel(
      downloadButton("downloadData", label = "Download")
    ),
    mainPanel(h6("Sample download", align = "center"))
  )
))
Run Code Online (Sandbox Code Playgroud)

我有很好的输出,除了错误:

> shiny::runApp('C:/Users/user/AppData/Local/Temp/test')

Listening on http://127.0.0.1:7280
  adding: sample_1.csv …
Run Code Online (Sandbox Code Playgroud)

r shiny

11
推荐指数
1
解决办法
7174
查看次数

基于文件路径的闪亮下载文件

我有一个文件,我生成闪亮用户点击一个按钮,文件应该下载.但没有任何反应

该函数export_report生成excel文件并将其保存到某个位置.然后,该函数将文件位置传递回下载处理程序,以便下载该文件.问题似乎是它没有正确返回.我已经在export_report光亮之外测试了函数()并且它完美地返回了所有内容,所以我从闪亮的角度来看显然做错了.

文件本身是在应该在服务器上的地方创建的,因为我可以在RStudio中下载它并在文件浏览器中查看它.谁能帮忙

# UI Section
downloadButton("downloadRpt", "Download Report")

# Server Section
output$downloadRpt <- downloadHandler(

  filename = function() {
    mydf <- report()
    dateRange <- input$dates_report
    selection <- input$selection 
    myfile <- export_report (mydf, selection, dateRange)
  },
  content = function(file) {
    file.copy(myfile, file)
  }
)
Run Code Online (Sandbox Code Playgroud)

我见过其他例子R Shiny:下载现有文件,这是我的代码所基于的

编辑1:添加带有一些假数据的export_report函数来运行它

export_report <- function(mydf,selection,dateRange) {

  # Template for where the template excel file is stored

  myoutputTemplate <- '/home/shiny_tutorials/Save to Database/templates/output_template.xlsx' 


  start_date <- dateRange[1] 
  end_date <- dateRange[2]
  date_range <- paste(start_date …
Run Code Online (Sandbox Code Playgroud)

r shiny

4
推荐指数
1
解决办法
4668
查看次数

标签 统计

r ×2

shiny ×2