我已经为一个网络项目实现了星级评级系统。
星星的数量在 Rails 后端计算并通过 View 渲染。 现在我也通过ajax实现了动态评级。因此我需要动态更新星级。
为了实现这一点,我只是复制了 Rails 代码并用 JavaScript 重新实现了它。虽然这个解决方案有效,但我对此并不满意,因为它似乎严重违反了 DRY 原则。
这件事上的最佳做法是什么?通过 JavaScript 计算所有星级?
我很高兴能找到可能的解决方案。
最佳答案
您可以对计算此评级的操作发出 AJAX get 请求。在此操作中,您可以查看请求是否是 AJAX 请求,然后仅返回计算出的值,而不是渲染相关 View 。
我假设您熟悉使用 respond_to
和 request.xhr?
方法等渲染 JSON。
关于javascript - 最佳实践 - DRY 违规 Rails <-> JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9853294/