def get_additional_context_on_update(self, request, form): memcache.delete(CACHE_NAME_FOR_TOP_PAGE_RESULTS) image_list = construct_image_json_from_content(request.form['content']) logging.info(request.path) entity_key = re.compile(ur'^.+update\/').sub('',request.path) logging.info(entity_key) deferred.defer(index_full_text_search,entity_key) return {'images':image_list,'lang':DEFAULT_LANG}
def get_additional_context_on_update(self, request, form): memcache.flush_all() logging.info(request.form['content']) image_list = construct_image_json_from_content(request.form['content']) tag_list = request.form['tags_string'].split(',') display_time = construct_datetime_from_string(request.form['display_time']) entity_key = re.compile(ur'^.+update\/').sub('',request.path) deferred.defer(index_full_text_search,entity_key) return {'images':image_list,'lang':DEFAULT_LANG,'tags':tag_list,'display_time':display_time}
def get_additional_context_on_create(self, request, form): key_name = None url = None try: url = request.form['url'] except: pass if url: key_name = url else: key_name = urllib.quote(request.form['title']) image_list = construct_image_json_from_content(request.form['content']) memcache.delete(CACHE_NAME_FOR_TOP_PAGE_RESULTS) deferred.defer(index_full_text_search_by_key_name,'AdminPage',key_name) return {'key_name':key_name,'images':image_list,'lang':DEFAULT_LANG}
def get_additional_context_on_create(self, request, form): memcache.flush_all() key_name = None url = None try: url = request.form['url'] except: pass image_list = construct_image_json_from_content(request.form['content']) tag_list = request.form['tags_string'].split(',') display_time = construct_datetime_from_string(request.form['display_time']) if url: key_name = url else: random_string = str(random.getrandbits(32)) key_name = display_time.strftime('%Y%m%d')+random_string deferred.defer(index_full_text_search_by_key_name,'Article',key_name) return {'key_name':key_name,'images':image_list,'lang':DEFAULT_LANG,'tags':tag_list,'display_time':display_time}
def add_translation(request,parent_key): if request.method != 'POST': return Response('POST method is required') parent_entity = db.get(parent_key) if parent_entity is None: return Response('Default lang entity is not found') model_name = parent_entity.kind() try: title = request.form['title'] except: return Response('Title is required') trans_key_name = parent_entity.key().name()+'_'+request.form['lang'] trans_entity = MODEL_DICT[model_name](parent=parent_entity,key_name=trans_key_name,title=title) for k in request.form: if k in ['title','url']: continue logging.info(k) logging.info(request.form[k]) try: setattr(trans_entity,k,request.form[k]) except: if request.form[k] == 'on' or request.form[k] == 'true': setattr(trans_entity,k,True) else: setattr(trans_entity,k,False) #custom process for tags_string #if k == 'tags_string': # #logging.info(request.form[k].split(',')) # setattr(trans_entity,'tags',request.form[k].split(',')) if k == 'content': #logging.info(request.form[k].split(',')) images = construct_image_json_from_content(request.form[k]) setattr(trans_entity,'images',images) trans_entity.put() children = MODEL_DICT[model_name].all().ancestor(parent_entity).fetch(1000) for child in children: if child.lang == request.form['lang']: deferred.defer(index_full_text_search,child.key()) return Response('Success:add transltion')