rails has_many和belongs_To

时间:2014-12-27 01:55:44

标签: sql ruby-on-rails ruby

我正在编写一个应用程序,其中我有两个模型,用户和帖子,到目前为止,我的应用程序运行正常,而不使用has_many和belongs_to。当我添加这两个语句时,它会有什么不同?我希望看到实际的差异而不仅仅是理论。

由于

1 个答案:

答案 0 :(得分:1)

实际的改进是你可以在控制器中使用关联,而不必担心如何实现这种关系。

例如,目前如果您想要查看属于用户this_user的所有帖子,您必须这样做...

@posts = Post.where(user_id: this_user.id)

定义了has_many和belongs_to关系后,您可以执行...

@posts = this_user.posts

这不仅仅是微不足道的...如果将来你改变你的应用程序让“用户有很多对话,对话有很多帖子”你最终可能会指定“用户has_many帖子,通过:对话”

你的......

@posts = this_user.posts

仍然有效,无需知道该关系如何连接的细节已经改变