def details(self): ret = [] # noinspection PyTypeChecker for detail in self.details_list: indicator = Key(urlsafe=detail['detail']).get() # we make a copy, it's direct access to it.. d_indicator = indicator.to_dict() d_indicator['value'] = detail['value'] ret.append(d_indicator) return ret
def indicators(self): ret = [] # noinspection PyTypeChecker for inds in self.indicator_list: ret_i = [] for ind in inds: indicator = Key(urlsafe=ind['id']).get() # we make a copy, it's direct access to it.. d_indicator = indicator.to_dict() d_indicator['value'] = ind['value'] ret_i.append(d_indicator) ret.append(ret_i) return ret
def post(self, call): ids = Offer.allocate_ids(size=1) user = self.user call = Key(urlsafe=call).get() taglio = self.request.get('taglio') offerta = self.request.get('offerta') o = Offer(id=ids[0]) o.team = user.key o.cut = taglio o.price = int(offerta) o.put() call.offers.append(o.key) call.put() self.render_template('message.html', params=dict(message="offerta ricevuta"))
def update(self, key, form): entry = Service.get_by_urlsafe_key(key) if entry.title is not form.title.data: entry.slug = Service.slugify(entry.title) entry.title = form.title.data entry.summary = form.summary.data entry.post = form.post.data entry.tags = [Key(urlsafe=tag) for tag in form.tags.data] return entry.put()
def create(self, form): entry = Entry(parent=Service.to_key(form.category.data)) entry.title = form.title.data entry.summary = form.summary.data entry.post = form.post.data entry.tags = [Key(urlsafe=tag) for tag in form.tags.data] entry.slug = Service.slugify(entry.title) # entry.user = users.get_current_user() return entry.put()
def get(self, call): # that's bad approach, but it's the fastest one call = Key(urlsafe=call).get() user = self.user o = None j = -1 i = j # search for the offer in the call for offer in call.offers: j += 1 t_offer = offer.get() if t_offer.team == user.key: o = offer i = j break if i > -1: # delete it. del call.offers[i] call.put() if o: o.delete() self.render_template('message.html', params=dict(message="offerta eliminata"))
def delete(self, key): return Key(urlsafe=key).delete()
def get_by_urlsafe_key(key): entity = Key(urlsafe=key) return entity.get()
def to_key(urlsafe): return Key(urlsafe=urlsafe)
def delete(self, key): tags = Tag.query(ancestor=Key(urlsafe=key)).fetch() for tag in tags: tag.key.delete() return Key(urlsafe=key).delete()