4

我想知道是否有人知道如何更新在 ruby​​ on rails 中使用脚手架生成器生成的文件(添加/删除/更新属性)。

例如:

脚手架学生姓名:字符串姓氏:字符串

因此这将创建一个关联文件(控制器、视图等),其中名称和姓氏作为字符串属性。当您 db:migrate 项目时,它将在数据库中创建表。但是,假设我想更新它是否使用附加属性(例如 studenId:integer)更新它,或者如果它删除或更新属性,你怎么做?

我厌倦了更新生成的文件,但是当我这样做时 db:migrate 它仍然会将生成的模式设置为表中的内容。Rails 中是否有内置脚本可以更新表格?

任何建议表示赞赏?感谢:D

4

4 回答 4

2

本例中的完整命令:

$ rails generate migration add_studentid_to_student
于 2013-03-06T11:28:45.777 回答
1

嗨试试ruby script/destroy scaffold student然后ruby script/generate scaffold student

于 2010-07-18T08:47:13.043 回答
1

还可以尝试阅读 Rails 迁移,以删除/更新表列。 http://api.rubyonrails.org/classes/ActiveRecord/Migration.html

于 2010-07-18T09:00:02.323 回答
1

您需要来自控制台的新属性的新迁移文件:

$ script/gnerate migration add_sudentid_to_sudent

它将生成 your_app/db/migrate/8293898391_add_sudentid_to_sudent.rb,在此文件中指定您的新属性:

def self.up
  add_column :sudents, :studentId, :integer
end

def self.down
 remove_column :students, :studentsId
end  

之后,回到控制台:

$  rake db:migrate

并且您可以编辑视图、模型、控制器文件并使用新属性

于 2010-07-18T09:01:55.400 回答