我有2个型号:
数据库中两个模型的相应表之间没有关系(并且不应该存在)。
当我要求产品时,我需要以多种货币退回价格。为此,我需要使用货币模型从数据库中读取所有货币。
我应该从产品控制器中的方法中的两个模型中选择记录,然后使用从数据库中读取的对象的属性计算价格,还是应该从内部读取货币产品型号中的方法然后执行相同的操作?
答案 0 :(得分:2)
您的优先事项应该是1)消除代码重复和2)以易于维护的方式组织代码。如果每次查找产品时,您还希望其价格为多种货币,那么名为Product
的{{1}}类方法非常合适。如果只需要findProductWithPrices
中的一个端点,那么将逻辑放在控制器中可能会更容易跟踪。
根据您最终执行这些计算的频率,另一个选项是将ProductController
属性添加到prices
类型的Product
,并将其设置为缓存的货币字典 - >价格。然后,您只需在产品价格发生变化时进行这些计算(并更新json
)。