【问题标题】:How to download data from a Ruby on Rails console running on Heroku?如何从运行在 Heroku 上的 Ruby on Rails 控制台下载数据?
【发布时间】:2020-09-20 08:05:59
【问题描述】:

我有一个在 Heroku 上运行的应用程序,该应用程序在数据库中有一些数据,我需要将这些数据下载为易于在本地使用的格式(json、csv、序列化 Ruby 对象等)。我知道如何远程连接到 Rails 控制台:

heroku run console

然后我可以从数据库中获取我的模型数据:

records_json = Record.all.to_json

现在我有了数据,如何下载?

【问题讨论】:

    标签: ruby-on-rails heroku heroku-cli


    【解决方案1】:

    如果不是大量数据,您应该能够将输出复制并粘贴到文件中。从控制台运行

    puts Record.all.to_json
    

    如果是大量数据,可以运行

    heroku run:detached rails runner "puts Record.all.to_json"
    

    根据文档,输出将转到您的日志,以便您可以从那里复制和粘贴。在这里阅读更多:https://devcenter.heroku.com/articles/heroku-cli-commands#heroku-run-detached

    如果您希望能够随时下载此模型的 json 文件,您可以将 json 响应添加到任何控制器方法,像这样

    respond_to do |format|
      format.html
      format.json { render json: Record.all }
    end
    

    然后只需导航到/the_path_you_chose.json

    【讨论】:

    • 我从来不知道heroku run:detached 也不知道heroku run:inside。感谢您提请我注意!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-21
    • 2013-06-20
    • 1970-01-01
    • 2016-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多