开发者

best method to keep and update unique data entries google app engine python

What is the best method to create a database for the given example model and assign each entry with a unique key/name which I already have and to overwrite it if the given key/name shows up again. From what I read you are supposed to use keyname? But I am not getting it to overwrite.

class SR(db.Model):
    name = db.StringProperty()
    title = db.StringProperty()
    url = db.StringProperty()

s = SR(key_name="t5-2rain")
s.name = 't5-2rain'
s.title = 'kaja'
s.url = 'okedoke'
db.put(s)

If I enter this again with the same key name but different title value, will create another entry how do I overwrite an existing value with the same key-name.

Basically how do I populate a table with unique identifiers and overwr开发者_如何学编程ite values if the same unique identifier already exist? I realize I can search for an existing name or key name etc, call that object make the changes to the instances and repopulate but, I would imagine there has to be a better method than that for overwriting especially if I am trying to put a list where some values may be overwrites and some not.


You've got the right idea already.

If 2 SR entities were constructed with the same key_name argument, then they will have the same Key path. Writing one will overwrite any old SR entity which had that key_name argument.

You should be able to observe this by querying the datastore for the entity with its unique key:

s = db.get(db.Key.from_path('SR', 't5-2rain'))
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜