11

我知道如何将 Rails 中的表格导出到格式化的 Excel 文件:http ://railscasts.com/episodes/362-exporting-csv-and-excel

但是如何从控制台做到这一点。

4

3 回答 3

40

通过使用连接到您的 Heroku 数据库

heroku pg:psql

然后运行 ​​sql 命令获取 csv 文件,例如

\copy (SELECT * FROM users) TO dump.csv CSV DELIMITER ','

使用 \q 退出。

执行命令后,dump.csv 将在您的本地环境中创建

于 2014-07-11T18:47:56.760 回答
3

这里有几个选择。

首先,您可以将一些 ruby​​ 代码封装到创建 Excel 电子表格的 rake 任务中,然后将其发送到 S3 以供您稍后获取。这将通过 CLI 运行:

heroku run rake export_data

或者

您可以启动 Postgres 控制台heroku pg:psql并使用此处讨论的查询直接将数据导出到本地 CSV: http ://ru05team.blogspot.co.uk/2011/03/export-postgresql-into-csv.html

注意:pg:psql为您提供与生产数据库的完整交互式 PSQL 会话,就好像它是本地的一样。直接与生产数据库混淆时要小心。

于 2013-03-22T20:04:01.983 回答
0

这是我使用的(它基于@algometrix的回答),它将转义字符串中包含的引号:

  1. 在heroku中打开postgres控制台heroku pg:psql

  2. 这将确保字符串中包含的任何引号都被相应地转义

\copy (SELECT * FROM users) TO dump.csv WITH (FORMAT CSV, HEADER TRUE, FORCE_QUOTE *)
于 2020-11-08T01:13:56.037 回答