Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我应该在哪里/如何在Google App Engine中对实体进行验证和转换?_Python_Validation_Google App Engine_Transformation - Fatal编程技术网

Python 我应该在哪里/如何在Google App Engine中对实体进行验证和转换?

Python 我应该在哪里/如何在Google App Engine中对实体进行验证和转换?,python,validation,google-app-engine,transformation,Python,Validation,Google App Engine,Transformation,在RubyonRails中,每个模型实体都有一个“validate_on_something”钩子方法,该方法将在实体实际持久化到数据库之前调用。我想在谷歌应用程序引擎类似的功能。我知道您可以通过在单个属性的声明中向它们传递参数来对它们进行验证。但是,如果我希望进行更多的验证,那么在模型类声明中是否有一些地方可以这样做 同样,有时实体在实际持久化到数据库之前需要修改。在实体实际写入数据库之前,我可能需要修改(转换)实体。实体类声明中是否有允许我这样做的地方 我知道我可以将这些转换/验证放在类之外

在RubyonRails中,每个模型实体都有一个“validate_on_something”钩子方法,该方法将在实体实际持久化到数据库之前调用。我想在谷歌应用程序引擎类似的功能。我知道您可以通过在单个属性的声明中向它们传递参数来对它们进行验证。但是,如果我希望进行更多的验证,那么在模型类声明中是否有一些地方可以这样做

同样,有时实体在实际持久化到数据库之前需要修改。在实体实际写入数据库之前,我可能需要修改(转换)实体。实体类声明中是否有允许我这样做的地方

我知道我可以将这些转换/验证放在类之外。但这似乎不是一个好的OO设计。看起来真的应该有钩子方法,可以在模型中自动调用,以满足这些需求


因此,我的问题是,在实体被持久化之前,处理实体验证和转换的最合适方法是什么?

您是否在原始应用程序引擎api之上使用任何类型的web框架?Rails是一个非常高级的框架。您是否研究过Django或任何其他web框架?您可能会发现它们比原始appengine实体更接近rails

或者,如果您想要一些较低级别的内容,请参阅本文

您是否在原始应用程序引擎api之上使用任何类型的web框架?Rails是一个非常高级的框架。您是否研究过Django或任何其他web框架?您可能会发现它们比原始appengine实体更接近rails

或者,如果您想要一些较低级别的内容,请参阅本文
最佳答案取决于您需要进行何种转换。模型没有通用的前/后看跌期权方法,但还有其他几种选择:

  • 如前所述,可以将验证函数传递给属性类构造函数
  • 可以使用以编程方式生成值的自定义属性类,例如
  • 您可以使用在最低级别存储实体时修改实体

    • 最佳答案取决于您需要进行何种转换。模型没有通用的前/后看跌期权方法,但还有其他几种选择:

      • 如前所述,可以将验证函数传递给属性类构造函数
      • 可以使用以编程方式生成值的自定义属性类,例如
      • 您可以使用在最低级别存储实体时修改实体

      不,不幸的是,只是原始应用程序引擎。我应该看看Django,但我当时只是想开始关于钩子的文章很有趣。但我看不到它提到了什么东西,你可以钩到,任何想法在哪里找到?不,只是原始的应用程序引擎不幸。我应该看看Django,但我当时只是想开始关于钩子的文章很有趣。但是我看不到它提到了什么东西,你可以在哪里找到它?我开始阅读关于派生属性的文章,这似乎是一个好主意。谢谢。我开始读关于派生属性的文章,这似乎是个好主意。谢谢