web/views/facets.py
branchstable
changeset 2340 65445ae67db0
parent 2339 00b704535984
child 2381 caad2367d940
equal deleted inserted replaced
2339:00b704535984 2340:65445ae67db0
   170         """
   170         """
   171         rqlst = self.rqlst
   171         rqlst = self.rqlst
   172         rqlst.save_state()
   172         rqlst.save_state()
   173         try:
   173         try:
   174             _cleanup_rqlst(rqlst, self.filtered_variable)
   174             _cleanup_rqlst(rqlst, self.filtered_variable)
   175             _prepare_vocabulary_rqlst(rqlst, self.filtered_variable, self.rtype, self.role)
   175             etype_var = _prepare_vocabulary_rqlst(rqlst, self.filtered_variable, self.rtype, self.role)
   176             return [x.name for x in self.rqlexec(rqlst.as_string()).entities()]
   176             attrvar = rqlst.make_variable()
       
   177             rqlst.add_selected(attrvar)
       
   178             rqlst.add_relation(etype_var, 'name', attrvar)
       
   179             return [etype for _, etype in self.rqlexec(rqlst.as_string())]
   177         finally:
   180         finally:
   178             rqlst.recover()
   181             rqlst.recover()
   179 
   182 
   180 class HasTextFacet(AbstractFacet):
   183 class HasTextFacet(AbstractFacet):
   181     __select__ = relation_possible('has_text', 'subject') & match_context_prop()
   184     __select__ = relation_possible('has_text', 'subject') & match_context_prop()