2017-08-16 60 views
0

我在嘗試下載一個BSON文件,該文件使用mongolite軟件包從MongoDB導出到我的閃亮應用。這是我的下載按鈕的代碼:正在下載由shiny生成的文件

output$downloadTiming <- downloadHandler(
    filename = "/keyTiming.bson", 
    content = function(fileToDownload){ 

    mongolite::mongo(
     collection = "keyTiming", 
     url = "mongodb://<User>:<Pass>@<url>" 
    )$export(fileToDownload, bson = TRUE) 
    } 
) 

當我嘗試下載它,它說:「錯誤:繼承(CON,‘連接’)是不是真正的」。我花了大量的時間研究並沒有發現任何東西,並希望這裏的某個人可以使用。

+0

你能確認你想要做什麼:您使用的閃亮來提取MongoDB的數據,然後將其導出到磁盤/硬盤驅動器,或者是你使用閃亮讀取數據來自MongoDB,所以它在閃亮的應用程序內可用? – SymbolixAU

+0

使用下載按鈕導出到磁盤/硬盤驅動器 –

回答

1

我終於明白了。最終的代碼看起來像這樣

output$downloadTiming <- downloadHandler(
    filename <- function(){ 
    return("timingOut.bson") 
    }, 
    content <- function(file){ 

    outFile = file("timingOut.bson") 

    mongolite::mongo(
     collection = "timings", 
     url = "mongodb://<user>:<pass>@<database>" 
    )$export(outFile, bson = TRUE) 

    file.copy("timingOut.bson", file, overwrite = TRUE) 
    } 
)