def getOverview(): stats=[] stats.append({'title': 'Total documents', 'value': Docs.count(), 'text': "%s Documents" % Docs.count()}) stats.append({'title': 'Total Pippies', 'value': Pippies.count(), 'text': "with %s Pippies" % Pippies.count()}) stats.append({'title': 'Locations', 'value': Frags.count(), 'text': "in %s Locations" % Frags.count()}) return stats
def getOverview(): stats = [] stats.append({ 'title': 'Total documents', 'value': Docs.count(), 'text': "%s Documents" % Docs.count() }) stats.append({ 'title': 'Total Pippies', 'value': Pippies.count(), 'text': "with %s Pippies" % Pippies.count() }) stats.append({ 'title': 'Locations', 'value': Frags.count(), 'text': "in %s Locations" % Frags.count() }) return stats
def __init__(self, oid=None, frag=None): if oid: # get by mongo oid frag=Frags.find_one({"_id": oid}) if(frag): self.__dict__=frag else: self.__dict__={'pos':frag['p'], 'txt':frag['txt'], 'l':frag['l'], 'pippi':frag['pippi']._id, 'doc':frag['doc']._id} self.save()
def frags(request): filtr={} template_vars={} docfilter=None cutoff=None pippifilter=None try: docfilter = ObjectId(cgi.escape(request.GET.get('doc',''))) except: pass if docfilter: filtr['doc']=docfilter try: pippifilter = ObjectId(cgi.escape(request.GET.get('pippi',''))) except: pass if pippifilter: filtr['pippi']=pippifilter else: try: cutoff = int(cgi.escape(request.GET.get('cutoff','7'))) except: pass if cutoff: filtr['l']={ '$gte': cutoff } orderBy = 'l' orderDesc = True template_vars=pager(request,Frags.find(filtr),orderBy,orderDesc) prevDoc=None template_vars['frags']=[] for frag in template_vars['data']: p=Pippi('',oid=frag['pippi']) d=Doc(oid=frag['doc']) if pippifilter: frag['txt']=diffFrag(prevDoc,frag['txt']) prevDoc=frag['txt'] template_vars['frags'].append({'_id': frag['_id'], 'pos': frag['pos'], 'txt': " ".join(frag['txt']), 'len': frag['l'], 'score': sum([d.tfidf.get(t,0) for t in p.pippi]), 'pippi': p, 'doc': d, }) template_vars['pippi']=pippifilter template_vars['doc']=docfilter if docfilter: template_vars['docTitle']=Docs.find_one({'_id': docfilter},['docid'])['docid'] if pippifilter: template_vars['pippiFilter']=1 #" ".join(Pippies.find_one({'_id': pippifilter},['pippi'])['pippi']) return render_to_response('frags.html', template_vars, context_instance=RequestContext(request))
def save(self,d1,d2,pkt): # todo new code to directly addtoset mongo-style if not pkt: return pippi=Pippi(pkt['pippi']) Docs.update({'_id': d1._id}, { '$addToSet' : { 'pippies' : pippi._id } }) Docs.update({'_id': d2._id}, { '$addToSet' : { 'pippies' : pippi._id } }) Pippies.update({'_id' : pippi._id}, {'$addToSet': { 'docs' : { '$each' : [d for d in [d1._id, d2._id]]}}, '$inc' : { 'docslen' : 2 }}) [Frags.save({'pos': p['pos'], 'txt': p['txt'], 'l': pkt['l'], 'doc': d, 'pippi': pippi._id}) for (d,p) in [(d1._id, p) for p in pkt['d1ps']]+[(d2._id, p) for p in pkt['d2ps']]] return pkt
def __init__(self, oid=None, frag=None): if oid: # get by mongo oid frag = Frags.find_one({"_id": oid}) if (frag): self.__dict__ = frag else: self.__dict__ = { 'pos': frag['p'], 'txt': frag['txt'], 'l': frag['l'], 'pippi': frag['pippi']._id, 'doc': frag['doc']._id } self.save()
def getFrags(self, cutoff=7): return Frags.find({'l': { '$gte': int(cutoff)}, 'doc': self._id, }).sort([('l', pymongo.DESCENDING)])
def frags(request): filtr = {} template_vars = {} docfilter = None cutoff = None pippifilter = None try: docfilter = ObjectId(cgi.escape(request.GET.get('doc', ''))) except: pass if docfilter: filtr['doc'] = docfilter try: pippifilter = ObjectId(cgi.escape(request.GET.get('pippi', ''))) except: pass if pippifilter: filtr['pippi'] = pippifilter else: try: cutoff = int(cgi.escape(request.GET.get('cutoff', '7'))) except: pass if cutoff: filtr['l'] = {'$gte': cutoff} orderBy = 'l' orderDesc = True template_vars = pager(request, Frags.find(filtr), orderBy, orderDesc) prevDoc = None template_vars['frags'] = [] for frag in template_vars['data']: p = Pippi('', oid=frag['pippi']) d = Doc(oid=frag['doc']) if pippifilter: frag['txt'] = diffFrag(prevDoc, frag['txt']) prevDoc = frag['txt'] template_vars['frags'].append({ '_id': frag['_id'], 'pos': frag['pos'], 'txt': " ".join(frag['txt']), 'len': frag['l'], 'score': sum([d.tfidf.get(t, 0) for t in p.pippi]), 'pippi': p, 'doc': d, }) template_vars['pippi'] = pippifilter template_vars['doc'] = docfilter if docfilter: template_vars['docTitle'] = Docs.find_one({'_id': docfilter}, ['docid'])['docid'] if pippifilter: template_vars[ 'pippiFilter'] = 1 #" ".join(Pippies.find_one({'_id': pippifilter},['pippi'])['pippi']) return render_to_response('frags.html', template_vars, context_instance=RequestContext(request))
def save(self): self.__dict__['_id']=Frags.save(self.__dict__)
def save(self): self.__dict__['_id'] = Frags.save(self.__dict__)