Also, now when I ran the following code in the console: ========================================
from google.appengine.ext import db key_of_specific_Thumb_entity = "agdhcHRydXNochALEgpJbWFnZVRodW1iGEUM" <<==key grabbed from datastore for thumbnail (which is a parent of the Bin/Large Image) db.get(db.Key(key_of_specific_Thumb_entity)) I get this error: ============ Traceback (most recent call last): File "C:\Program Files\Google\google_appengine\google\appengine\ext \admin\__init__.py", line 194, in post exec(compiled_code, globals()) File "<string>", line 5, in <module> File "C:\Program Files\Google\google_appengine\google\appengine\ext \db\__init__.py", line 1053, in get cls1 = class_for_kind(entity.kind()) File "C:\Program Files\Google\google_appengine\google\appengine\ext \db\__init__.py", line 217, in class_for_kind raise KindError('No implementation for kind \'%s\'' % kind) KindError: No implementation for kind 'ImageThumb' I'm guessing it has something to do with it being a parent or something!? On Mar 16, 1:03 pm, iceanfire <iceanf...@gmail.com> wrote: > Hi, > > I'm having a bit of trouble understanding how to use parents/children > properties within transactions. > > I have divided up my "Thumbnails" and the actual "Large Image" into > two separate models to save processing power, but when I upload, I > want to make sure that both entities are updated--therefore I have to > use transactions. > > Short version (incase the answer is something simple): > ========================================== > Can I query to find out the children entities of a Parent entity? > > Long Version: > =========== > Key fact - thumbnails is connected to the Large Image (bin) via the > column "bin_id" > > The code in Exhibit 1 doesn't work because I get the 'error > "ImageThumb" must have a complete key before it can be used as a > parent'. So I tried to: > 1. .put() ImageThumb > 2. assign it as a parent > 3. .put() Bin (the large image) > 4. get the ID from step 3 > 5. insert the id in the ImageThumb and .put() it again. > > I got the error: you can't put an entity more than once in appengine! > > So my last resort was to just get rid of binID and do steps 1-3. This > works! But now i'm stuck as to getting the Large Image (child) for a > specific thumbnail(parent). > > Code Exhibit 1 > ====================== > def uploadImages(self): > thumb_db = ImageThumb() > thumb = images.resize(image_data, > 150,150,images.JPEG) > thumb_db.thumb = db.Blob(thumb) > > bin_db = ImageBin(parent=thumb_db) > bin_db.image = image_data > bin_put=bin_db.put() > bin_id = bin_put.id() > > thumb_db.binId = bin_id <<=== need binId so > that thumbnail is linked to actual image (so I can use get by id > class) > > thumb_db.type= "Picture" > thumb_put = thumb_db.put() > thumb_id = thumb_put.id() --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---