AppEngine NDB属性验证

时间:2013-03-04 11:53:31

标签: python google-app-engine app-engine-ndb wtforms google-cloud-endpoints

我想知道验证NDB实体属性的最佳方法是什么:

  • 日期必须在将来
  • 等级(整数属性)必须介于1到10之间
  • 对另一个实体的引用必须具有某些属性值(例如book.category.active必须为True)

我也在使用WTForms来验证提交的请求,但我想在较低级别上强制执行验证,例如数据存储区实体本身。

所以基本上我正在寻找的是在数据存储区实体上调用验证以查看它是否有效。 如果它有效,我可以将实体放到数据存储区,但如果它无效,我想检索无效的属性,包括未成功验证的apply验证器。

WTForms可能不够的另一个原因是我遇到了新的Cloud Endpoints。 在这个模型中,我收到的是实体,而不是http请求。

其他AppEngine用户如何解决此问题?

1 个答案:

答案 0 :(得分:0)

这不是最好的解决方案,但你可以自己动手。只需使用reg-exs / mins和maxs等预先定义一组属性。看起来你的属性很直接,不会太难。