【发布时间】:2021-03-08 18:48:51
【问题描述】:
我正在尝试按照 Golem 的框架将 Bigquery 表中的数据读入 Shiny App。
这可以通过在 App.R 文件中的 ui 和 server 函数之前添加以下代码轻松完成
bq_auth(path = "xxxxxxxxxxxx.json") # authenticating biqrquery with service account json file
# Establishing connection
con <- dbConnect(
bigrquery::bigquery(),
project = "project id",
dataset = "dataset name",
billing = "project id"
)
但是在使用Golem 时,我对如何做到这一点有点迷茫。
按照这个thread,我在app_server.R 文件上创建了一个reactiveValue()。
#' The application server-side
#'
#' @param input,output,session Internal parameters for {shiny}.
#' DO NOT REMOVE.
#' @import shiny
#' @import bigrquery
#' @noRd
app_server <- function( input, output, session ) {
# Your application server logic
bq <- reactiveValues()
observe({
bq$con <- dbConnect(drv = bigquery(),
project = "project_id",
dataset = "datset_id",
billing = "project_id")
})
}
我还导入了bigrquery,但这似乎破坏了一些东西,因为现在我在运行run_dev.R 时遇到以下错误:
> golem::document_and_reload()
Loading Dashboard
Error : object ‘DBI’ is not exported by 'namespace:bigrquery'
-- Error documenting your package ----------------------------------------------------------------
>
> # Run the application
> run_app()
Error in run_app() : could not find function "run_app"
【问题讨论】:
-
你好,“could not find function run_app()”的错误通常表示document_and_reload()函数失败。你能把运行 run_dev.R 脚本的全部输出粘贴到这里吗?
-
我编辑了我的问题以包含我在运行
run_dev.R时遇到的错误。可能还值得一提的是,即使我撤消了最终导致错误的更改,run_dev.R仍然给出相同的错误。感谢您抽出宝贵时间查看 thsi!