0

说我想脚手架生成大学

但大学最终应该与国家有关。因为每所大学都有一个州,一个州有很多大学。

在我的脚手架命令中,我应该包含 state_id 吗?

script/generate scaffold university name:string address:string state_id:int

...我知道我将不得不更新我的模型以让他们理解这种一对多的关系,但我不认为这是手动在数据库中添加列的最佳方式......所以我的问题是......什么将是最合适的方法吗?我做得对吗?请帮忙。

4

3 回答 3

3

如您所知,脚手架并不是最终应用程序所依赖的,它们只是提供一种方便的方式来自动生成视图的起点。

可能最简单的方法是让脚手架为将作为字段显示在视图中的列生成迁移。然后为那些不会的列创建第二个迁移。

script/generate scaffold university name:string address:string
script/generate migration add_status_id_to_universities state_id:integer another_hidden_column:string
rake db:migrate

即使您已经迁移过一次,这也有效。

PS 您可能想查看ActiveScaffold 插件以自动调整您的视图以适应数据库更改。

于 2009-10-30T14:38:38.510 回答
0

我就是这样做的。所以是的,除非别人有更好的方法。

于 2009-10-30T14:25:19.100 回答
0

没有正确的答案。您可以在创建脚手架时包含它,也可以跳过它并稍后在执行之前将其添加到迁移中rake db:migrate

在脚手架中指定字段的优点是 Rails 可以添加反向迁移来删除该字段,然后自动生成的脚手架将在显示/编辑视图中包含该字段。

于 2009-10-30T14:37:55.940 回答