Rails 聊聊洁癖

huobazi · 2014年09月22日 · 最后由 billy 回复于 2014年10月06日 · 1888 次阅读

假设有个 model 比如 叫 class Comment < ActiveRecord::Base 你喜欢 belongs_to :author, class_name: 'Member', foreign_key: 'author_id' 还是直接就 belongs_to :member

O(∩_∩)O

没有特殊情况当然就是 belongs_to :member 因为这是大家都了解的默认约定。

#1 楼 @Victor 我有时候觉得 author 更易读 容易理解。

#2 楼 @huobazi 如果在开发中,发现这样的情况,可能是自己当时设计的时候逻辑没有理顺。本来这个表也许就该起名叫 authors。

当然如果你的 member 本身就要负担两个责任,那又另说了。

有空可以读读下文:http://www.techug.com/thought-on-naming-code

喜欢前面的,讲清楚了是这个会员是作者

如果 Comment 只与一种 member 有关,比如说 author, 这也是通常情况,那么直接belongs_to :member就好了。

如果你后来要加功能,打比方说加一个 editor, 那么写的时候可以改成你的 author_id 方案,并加 migration。

如果你写第一个功能的时候预见到了第二个功能可能会需要,那么写第一个的时候可以直接写复杂版。如果第二个功能根本不需要,直接写最简单版本。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号