我有用户模型和事件模型。 用户可以参与活动,我不知道在哪里编写代码 - 在UsersController和User模型中,或在EventsController和Event模型中
UsersController
def join_event
current_user.join_event(Event.find(event_id))
end
end
或
EventsController
def add_user
Event.find(event_id).add_user(current_user)
end
端
哪种解决方案更好,更易读(或者有更好的方法)?
答案 0 :(得分:1)
它应该取决于您将如何创建事件对象。在创建事件对象时可以轻松访问哪个对象。
第一种情况:
如果有组织者(管理员)的事件,组织者只能邀请用户,在这种情况下。代码应该在事件控制器中。因为您需要迭代用户对象集合而不是单个对象。
第二种情况:
如果用户可以直接加入任何已创建的事件/创建其他人可以加入的事件,那么它应该在用户控制器中。