gpt4 book ai didi

ruby-on-rails - 我应该避免在 Rails View 中检查 nil 吗?

转载 作者:数据小太阳 更新时间:2023-10-29 06:57:23 26 4
gpt4 key购买 nike

在我的模型中,有很多属性和方法可以根据模型实例的属性执行一些计算。如果计算所依赖的属性为零,我一直让这些方法返回零。由于这个设计决定,在我的 View 中显示这些值之前,我做了很多零检查。

我考虑过让这些方法在没有足够信息时返回零而不是 nil,但我选择了 nil,因为零是一个有效的计算结果,nil 意味着没有足够的信息。

我应该返回 0 而不是 nil 吗?我可以使用任何其他模式来避免在我的 View 中进行一堆 nil 检查吗?

最佳答案

如果您的问题是选择是否显示或不显示计算结果,我倾向于认为您做对了。如果显示任何值都没有意义,那么 nil 是完全合理的。

但是,如果您的业务逻辑导致您进入大部分 View 将习惯性地空白的状态,那么您可能应该重构以使您的程序失去其漏洞抽象。

例如,考虑一个从跟踪Food 食谱开始的应用程序。然后,随着需求的变化,我们得到了馅饼需要显示与汉堡不同的信息的概念。与其使用 calculate_deliciousness_of_pie_or_nil_for_burger 方法,然后在 View 中检查 nil,不如将其分解为馅饼的饼图 View 和汉堡的汉堡 View 。这可能(可能会)需要重新考虑我的对象抽象。

关于ruby-on-rails - 我应该避免在 Rails View 中检查 nil 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/283239/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com