假设我有两个现有Rails 3应用程序模型,我想为其创建一个关联:
User
AccountType
我想创建一个关联,以便我可以这样做:
User.account_type
AccountType.users
因此,用户只有一个account_type,而帐户类型有0个或多个用户。
在数据库级别,用户将拥有account_type_id,而AccountType表将没有任何与用户相关联的列。
所以我的第一步是写一个测试吗?因此,在我的user_spec.rb和account_type_spec.rb中,我应该创建一个简单的测试来查看它是否具有代理类.account_type是否存在account_type.users对吗?其他什么?
修改User.rb模型并添加belongs_to:AccountType,在AccountType.rb中添加has_many吧?
创建迁移脚本,我只是添加account_type_id还是使用特殊方式引用AccountType?
答案 0 :(得分:0)
关于测试:我同意Dave Newton的评论,即您应该测试您打算使用此关联创建的任何行为(因此编写测试以创建关联,通过此关联查找用户或帐户,等等,但是你所描述的对方法存在的测试可能比必要的更远。
你的步骤2和3看起来对我来说。
rails g migration add_account_type_id_to_users account_type_id:integer
应该生成您需要的迁移。