如何重新排序 Rails 应用程序中的 table 列?
How do I re-order table columns in a Rails app?
我在我的 Rails 应用程序中创建了一个模型,一段时间后我意识到我忘记添加一些属性,后来通过生成的迁移添加了它们。
我现在意识到 schema.rb
中属性列的顺序是它们在 ActiveAdmin 中生成的资源视图中出现的顺序。
我想在 ActiveAdmin 中查看该模型时对列重新排序,我想这样做的唯一方法是更改数据库中的列顺序。
我查看了 here and here,并尝试使用 change_table
或 change_column
运行 数据库迁移。这没有产生任何变化。
这是迁移 I 运行,没有结果:
class Reordercolumn < ActiveRecord::Migration[5.0]
def up
change_table :student_details do |t|
t.change :exact_length, :text, after: :length_of_stay
t.change :returned_home, :boolean, after: :spouse_name
t.change :has_spouse, :boolean, after: :expectation
end
end
end
为了以特定顺序查看 ActiveAdmin 中的属性列,我 运行 进行了数据库迁移以更改列,但迁移并未对列进行重新排序。
我在我的 Rails 应用程序中创建了一个模型,一段时间后我意识到我忘记添加一些属性,后来通过生成的迁移添加了它们。
我现在意识到 schema.rb
中属性列的顺序是它们在 ActiveAdmin 中生成的资源视图中出现的顺序。
我想在 ActiveAdmin 中查看该模型时对列重新排序,我想这样做的唯一方法是更改数据库中的列顺序。
我查看了 here and here,并尝试使用 change_table
或 change_column
运行 数据库迁移。这没有产生任何变化。
这是迁移 I 运行,没有结果:
class Reordercolumn < ActiveRecord::Migration[5.0]
def up
change_table :student_details do |t|
t.change :exact_length, :text, after: :length_of_stay
t.change :returned_home, :boolean, after: :spouse_name
t.change :has_spouse, :boolean, after: :expectation
end
end
end
为了以特定顺序查看 ActiveAdmin 中的属性列,我 运行 进行了数据库迁移以更改列,但迁移并未对列进行重新排序。