如何更改列的顺序
我通过rails控制台中的’MODEL.all’命令获取数据
当我在rails控制台中运行MODEL.all
时,我想将列’cgi_name’置于第3位
我使用postgres
作为我的数据库
怎么弄呢?
简单的答案是YOU CANNOT
使用Model.all
选择时,无法重新排序要显示的列名。
否则,您可以通过按所需顺序选择每列来重新排序。
Model.select("column1, column2, cgi_name, column4 etc..")
希望能帮助到你 :)
要直接回答您的问题,您必须在数据库级别移动列
目前, 我只知道MYSQL支持此function :
ALTER TABLE Employees CHANGE COLUMN empName empName VARCHAR(50) AFTER department;
据我所知,Postgres 不支持此function :
许多刚接触postgresql的人经常会问是否支持更改表中的列位置。 目前它没有; 如果要更改列位置,则必须重新创建表,或添加新列并移动数据
在视图中,您必须手动显示列,或创建辅助方法以按您选择的顺序循环显示它们
- Rails Activerecord Relation:使用子查询作为SQL select语句的表
- Rails 4 – 如何在开发中使用sqlite3和使用Heroku生成PostgreSQL
- 配置与Heroku PostgreSQL的RubyMine远程连接
- rails migration:postgresql for md5 of random string as default
- Rails / Postgres:“必须出现在GROUP BY子句中或用于聚合函数”
- 如何获取当月创建的记录?
- Rails不转换时区(PostgreSQL)
- 保存到PostgreSQL时,二进制数据变得笨拙
- 可以在Rails / ActiveRecord中指定允许带NULL的唯一索引吗?