2011-04-09 46 views
0

在我的应用程序中,我有一个用户模型和一个地址模型。我如何让地址表单包含用户标识的ID。 (即我的地址模型有一个id和一个id_user)?Id在rails应用程序中

回答

1

您的地址模型应该包含user_id字段,而不是id_user字段。看起来你刚刚开始使用Rails,因此我建议您阅读官方的Getting StartedAssociation basics指南以了解基础知识。

0

您可能想查看记录关联。我强烈建议the guide on that very subject on the Rails website

由于您花时间创建了两个独立模型(一个用于用户,一个用于地址),我认为这是因为您可以为每个用户创建一个或多个地址。 So I would recommend using a has_many association

在您的地址模型的迁移文件中,您应该有一个user_iduser_id类型integer。按照惯例,rails将使用名为model_id的列来与模型建立关联。因此,在您的情况下,型号user可以通过user_id列的地址链接。

然而,只有列是不够的。您还需要告诉Rails模型中的关联。所以,以下内容添加到您的用户模型的顶部(应用程序/模型/ user.rb我会假设)

has_many :addresses 

然后,告诉你地址模型它属于一个用户。这样做又是非常简单的。添加以下你的地址模型(应用程序/模型/ address.rb)

belongs_to :user 

从那里的顶端,你可以做所有种类的美好的事物。要创建表单,您可能需要查看嵌套模型表单。其上有两个Railscast Part 1Part 2

由于您对Rails的使用经验似乎有限,我也建议寻找到getting started guide,通过Railscasts由Ryans贝茨

看着嫉妒实验室(滑稽命名 Rails for Zombies),当你得到滚动浏览该系列教程