问题标签 [model-validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
22927 浏览

asp.net-mvc-3 - 模型验证/ASP.NET MVC 3 - 条件必需属性

我的 ASP.NET MVC 3 应用程序有问题。我的模型中有 2 个属性,因此我只希望我的视图中需要其中 1 个属性,无论哪个是空的。例如,如果我输入电话号码,则不再需要电子邮件,反之亦然,但如果我将两者都留空,则应该需要 1,以下是我的模型:

我是否需要创建一个自定义属性来验证我的模型,如果需要,我将如何实现这一点?

0 投票
1 回答
37 浏览

ruby-on-rails - rails 3,尝试确认电子邮件地址在 dbm 中,但得到错误数量的 args 错误

我的来源是:https ://gist.github.com/f01685376a02a577a9cb

有问题的方法:

我认为解决方案是将值更改为User.find_by_email(address)类似的值,User.find_by_email(next_approver_email) = (address)但我知道这不起作用。

Next_approver_email是我们要检查的user.emaildb 列

有任何想法吗?

0 投票
1 回答
1347 浏览

asp.net-mvc - 将模型验证移至服务类 - ASP.NET MVC

我希望能够从我的服务类中执行验证。我有一个看起来像这样的控制器动作:

我不喜欢我的 _postDataService.SavePost() 可以保存无效数据的事实,我想将模型验证移至我的 _postDataService.SavePost() 方法。我的问题是最优雅的方法是什么?如果我将模型验证移至我的 Service 方法,我如何将模型错误返回给我的控制器?最后,像电子邮件地址的唯一性这样的模型验证会去哪里,因为它需要一些数据访问?在我看过的所有类似问题中,没有一个给出直接的方法来做到这一点。

我也考虑过这个解决方案,但这篇文章很旧,我觉得它不是最新的。

0 投票
2 回答
332 浏览

c# - 如何获得模型验证以获取 MVC3 列表中对象上设置的属性?

我有一组看起来与此类似的模型

然后我有一个看起来像这样的控制器方法

我的问题是ModelState.IsValid没有触发列表中对象的验证。

我该如何做到这一点,或者甚至有可能吗?

或者,我可以手动触发列表中元素的验证吗?

0 投票
1 回答
2229 浏览

asp.net-mvc-3 - 如何将 ASP.NET MVC3 请求验证异常作为模型或属性验证错误处理

我的问题希望非常直截了当。提交表单后,我想将所有具有无效字符(特别是 HTML)的属性(字段)标记为模型错误。我面临的问题是请求验证在模型绑定/ 验证之前启动,我得到 HTTP 500...我正在寻找的是如何“全局捕获请求验证异常并将它们显示为模型错误”。此外,我不想“剥离”HTML 标签,我想通知用户他们的输入无效。[AllowHtml]<httpRuntime requestValidationMode="2.0" />

我考虑过使用正则表达式验证属性来查找错误的输入,但正如我所提到的,ASP.NET MVC3 上的请求验证发生在模型绑定/验证之前,所以这是不行的......

可以在此处找到对请求验证的非常好的概述。

0 投票
2 回答
2057 浏览

.net - 强制 Id 和 UserName 在 ASP.NET MVC 3 模型中是唯一的

在我的 ASP.NET 网站用户模型中,我希望 GuidId和 StringUserName都是唯一的。我将使用实体框架将我的模型对象映射到数据库。

在 ASP.NET MVC 中是否有促进这种常见约束的内置属性或其他机制?还是我必须在用户注册表单上手动检查用户名的唯一性?

0 投票
1 回答
79 浏览

asp.net-mvc-3 - “用户可以做 X 是用户拥有对象 Y”:在模型验证或控制器逻辑中实现逻辑?

例如,考虑一下逻辑“用户只能编辑或删除用户已创作的评论”。

我的控制器动作将重复检查当前登录用户是否可以影响评论的逻辑。例子

当然,我可以将该逻辑捆绑在一个方法中,这样我就不会复制/粘贴该片段;但是,将该代码从控制器中取出并将其放入 ValidationAttribute 可以使我的 Action 更小,更容易编写测试。例子

模型验证是这项工作的正确工具吗?我喜欢将这种担忧从控制器动作中解脱出来;但在这种情况下,它可能会使事情进一步复杂化。当您认为此操作是 RESTful API 的一部分并且需要根据 ModelState 中的验证错误返回不同的 HTTP 状态代码时,尤其如此。

在这种情况下是否有“最佳实践”?

0 投票
1 回答
353 浏览

c# - 条件模型验证

我有以下模型:

我有一个动作,它为此模型设置了一些值,然后将其返回到如下视图:

在那个视图中,我有一个表单,我可以在其中设置 TrackingRef,如下所示:

我希望这个 TrackingRef 根据我使用的跟踪类型来验证不同的长度。例如,我将跟踪类型设置为 TNT,所以我希望它的最小长度为 7,但如果我将其设置为 UPS,我希望它的最小长度为 8,这可能吗?我知道我可以MinLength在我的模型中设置属性,但我希望它是动态/有条件的,基于我使用的跟踪类型。

0 投票
2 回答
3409 浏览

asp.net-mvc-3 - ASP.NET MVC 3 和下拉列表的验证属性,默认值为 0

使用默认值为 0 的下拉列表的验证属性引发所需验证错误的最佳方法是什么?如果值为 0 或默认值,我希望属性为我的模型抛出错误。

0 投票
2 回答
2450 浏览

asp.net-mvc-3 - 验证属性被触发两次

在我的 MVC3 应用程序中,我有模型(不重要的属性已删除):

问题是当一个动作被提交验证属性调用两次时,我可以得到 4 个错误,而不是 2 个:

我不在控制器代码中使用 Validate 方法。这个问题也出现在我的自定义属性中,但它不会发生在必需属性上。另外我必须注意自定义属性的 ctor 也被调用了两次

我的行动

在查看时,我使用以下方法呈现我的错误:

我再次再次检查 ViewData.ModelState 已经包含两次错误。