我有一个模型“播放器”,在加载主页时,它会显示随机播放器的图片。单击时,它会将该播放器上的字段 (num_clicks) 增加 1。
现在我有:
- 监听图片点击事件的jQuery
- 它在 static_pages_controller#player_clicked 向服务器发出 AJAX 请求,发送存储在 DOM 中的玩家 ID
- 控制器更新玩家的字段,并将新值(通过 JSON)发送回 AJAX 请求的成功回调
- 然后成功回调使用 jQuery 将新值插入 DOM
此功能的所有 jQuery 都在 中/home.js.coffee
,这是放置这个的正确位置吗?
我应该在图片中使用link_to
而不是在图片上使用点击侦听器吗?
页面(加载时)显示@player.num_clicks,所以如果这个home
数字会自动更新而不是用服务器提供的新值覆盖它(在AJAX成功回调中)会很好。这可能吗?
现在,我所做的基本上是在工作,但我相当有信心这不是“rails 方式”,我想解决这个问题。谢谢!