【发布时间】:2020-05-10 19:54:56
【问题描述】:
这是场景...
视图需要以非常特定的格式/方式将数据传递给它(以便很好地适应第三方图表 API)。当从数据库中提取数据时,必须对其进行转换才能满足 View 的需求。
根据 MVC 的原则,应该在哪里进行这种数据转换?
选项:
- 我可以要求控制器中的操作方法从数据库中提取数据并对其进行转换,然后再将其传递给视图。或者...
- 我可以改为在模型中创建一个方法来提取和转换数据,然后再将其传递给控制器(控制器然后将其传递给视图)。
我选择将所有这些都放在 Model 方法中,如下所示:
def self.rating_chart_data
Film.group(:rating).count.transform_keys{ |key|
key == 1 ? (key.to_s + " Star") : (key.to_s + " Stars")}
end
不过,我对这个决定并不是很有信心。想法?
【问题讨论】:
标签: ruby-on-rails model-view-controller