如何在Shiny中编辑.yml文件

时间:2019-01-22 08:57:05

标签: r shiny

我有一个Shiny应用程序,可以从各种API和数据库中提取数据。与凭据,用户名,密码等有关的所有敏感数据都存储在config.yml文件中。 Shiny应用程序中的代码调用config.yml文件中的变量以连接到不同的API /数据库。

我还为Shiny应用程序创建了管理员登录名,并希望向管理员提供访问权限,以便在config.yml文件中进行更改。闪亮的应用程序有一个单独的标签,称为Admin,当管理员登录时会打开。我如何打开config.yml文件并允许管理员进行编辑并保存?

1 个答案:

答案 0 :(得分:1)

我为配置文件创建了一个标签,并使用Shiny Ace作为编辑器:

library(shinyAce) 

# UI

aceEditor(
          outputId = "someID",
          value = read.delim("config.yml"),
          placeholder = "Connection configuration file"
         ), 

        actionButton("save", label = "Save Configuration")

# Sever

 observeEvent(input$save, {
    write(x = input$someID, file = "config.yml")
    print("file saved")

    })

然后,您可以调用config.yml并应用配置。