代码之家  ›  专栏  ›  技术社区  ›  Prabu

在MVP中写入验证的位置

mvp
  •  31
  • Prabu  · 技术社区  · 17 年前

    3 回复  |  直到 17 年前
        1
  •  22
  •   Gishu    17 年前

    模型中应包含特定于域的规则/验证。您可以使用model.validate()让您知道是否违反了规则。查看Rails模型(ActiveRecord)类,了解此概念的良好实现。

    该视图应使用户难以输入无效的输入。因此,“为数值输入字符串”类输入错误应该在到达演示者之前被删除。 模型和视图之间可能存在一些重复验证。例如,AttributeX必须介于1-100之间。这必须在模型中进行验证。。同时,您可能希望在UI中的微调器中设置一个插槽,将minValue和maxValue范围设置为1-100。

        2
  •  4
  •   Mendelt    17 年前

    我通常保持我的观点完全干净,没有逻辑。但是我不做很多的网页开发。在Ajax环境中,您可能需要在视图中进行客户端验证。

    输入验证进入演示者。这可能类似于检查数字字段是否不包含非数字字符。但根据您的情况,这也意味着检查文件是否存在等。

    在更复杂的情况下,验证应该在不同的地方重用,我通常将其分离到一个可以在不同地方调用的验证引擎中。这解决了复制验证代码的一些问题,例如,在表示层和持久层中使用验证代码。

        3
  •  0
  •   Keith Nicholas    17 年前

    节目主持人

    视图应该有“小部件”,尽可能防止无效输入。