key_name
データストアにエンティティがあり、そのプロパティの組み合わせから派生した一意のエンティティを持つことができると仮定します。
例:
class Render(db.Model):
#Math props
x_size = db.IntegerProperty()
y_size = db.IntegerProperty()
center_axis_x = db.FloatProperty()
center_axis_y = db.FloatProperty()
center_axis_z = db.FloatProperty()
iterations = db.IntegerProperty()
まったく同じプロパティを持つエンティティは他にないと確信しているので、これまでに使用した一意のキーを作成するには、次のようにします。
render_key=hashlib.md5(str(properties.x_size) +
str(properties.y_size) +
str(properties.iterations) +
str(properties.center_axis_x) +
str(properties.center_axis_y) +
str(properties.center_axis_z)
).hexdigest()
hexdigestを使用すると、キーをURLセーフでユーザーフレンドリーにできますが、それについても話し合う必要があると思います。
だから質問に。上記のシナリオまたはその変更されたバージョンで、同じ結果を達成するための他のより良い方法はありますか?下位互換性がある必要はありません。したがって、最終的なキーが私のメソッドによって生成されたものと異なっていても、問題はありません。
ありがとう