コード例 #1
0
ファイル: knowledgeModel.py プロジェクト: j-kallwies/IKnow
 def getKnowledgeIDsFromTagIDs(self, tagIDs):
     self.setFilter(getFilterFromIDs(tagIDs, "tag_ID"))
     self.select()
     knowledgeIDs = []
     for i in range(self.rowCount()):
         knowledgeIDs.append(self.record(i).value("knowledge_ID"))
     return knowledgeIDs
コード例 #2
0
ファイル: knowledgeModel.py プロジェクト: j-kallwies/IKnow
    def setFilterByTagIDsAndText(self, tagIDs, filterText):
        if len(tagIDs) == 0:
            filterByTags = "1"
        else:
            knowledgeIDs = self.knowledgeTagsModel.getKnowledgeIDsFromTagIDs(tagIDs)
            logging.debug("getKnowledgeIDsFromTagIDs(%s)=%s" % (str(tagIDs), str(knowledgeIDs)))
            if len(knowledgeIDs) == 0:
                filterByTags = "0"
            else:
                filterByTags = getFilterFromIDs(knowledgeIDs, "ID")

        if filterText is not None and filterText != "":
            filterByText = '(title LIKE "%' + filterText + '%") OR (description LIKE "%' + filterText + '%")'
        else:
            filterByText = ''

        logging.debug('filterByTags="%s"' % filterByTags)
        logging.debug('filterByText="%s"' % filterByText)
        if filterByText != "":
            self.setFilter("(%s) AND (%s)" % (filterByTags, filterByText))
        else:
            self.setFilter(filterByTags)
        logging.debug('knowledgeModel.filter = "%s"' % self.filter())
        self.select()