用户可以报名活动（By #187）

#187，请review代码

测试代码包含该动作的controller、model、view三个测试（可能覆盖不全）