我已经为公司创建了一个设备。我做了一个表users,希望我能存储用户信息密码等。当用户注册时,我希望它创建一个新的用户和公司的关联。
我的公司型号: has_one:用户我的用户型号: Belongs_to:公司
我应该如何覆盖注册控制器?
最好的问候,Rails初学者
发布于 2011-08-31 04:30:25
如果我错了,请纠正我,但听起来公司不会登录-只有属于公司的用户才会登录。
考虑到这一点,您应该使用User而不是Company作为设计模型。那么,你的联想是正确的。下一步是使用嵌套属性(视图中的fields_for;模型中的accepts_nested_attributes_for )在company#new的表单中为用户添加字段。
回答您最初的问题:您可以使用嵌套属性在注册表单中创建新用户。你不需要重写Devise的注册控制器。只需修改注册表单以包含fields_for用户即可。另外,确保Company模型具有User模型的accepts_nested_attributes_for。
顺便说一句:我不了解您的应用程序的体系结构,但看起来has_many更合适。在与此类似的情况下,您更有可能希望拥有属于一家公司的多个用户。
https://stackoverflow.com/questions/4584351
复制相似问题