我想知道是否有人知道如何更新在轨道上的ruby中使用脚手架生成器生成的文件(添加/删除/更新属性)。
例如:
scaffold student name:string lastname:string
所以这将创建一个关联文件(控制器,视图等),其名称和姓氏作为字符串属性。 db:迁移项目时,它将在数据库中创建表。但是,假设我想更新是否使用附加属性(例如studenId:整数)更新它,或者如果删除或更新属性,那么你是如何做到的?
我只是更新了生成的文件,但是当我这样做时:db:migrate它仍然会将生成的模式设置为表中的内容。 rails中是否有内置脚本来更新表格?
任何建议都表示赞赏? 谢谢, d
答案 0 :(得分:2)
此示例中的完整命令:
$ rails generate migration add_studentid_to_student
答案 1 :(得分:1)
您好,请尝试ruby script/destroy scaffold student
,然后ruby script/generate scaffold student
答案 2 :(得分:1)
还尝试阅读rails迁移,删除/更新表列。 http://api.rubyonrails.org/classes/ActiveRecord/Migration.html
答案 3 :(得分:1)
您需要从控制台获取新属性的新迁移文件:
$ script/gnerate migration add_sudentid_to_sudent
它将生成your_app / db / migrate / 8293898391_add_sudentid_to_sudent.rb,在此文件中为您的新属性添加spicify:
def self.up
add_column :sudents, :studentId, :integer
end
def self.down
remove_column :students, :studentsId
end
之后,回到控制台:
$ rake db:migrate
并且您可以编辑视图,模型,控制器文件并使用新属性