コード例 #1
0
 def update_topics(self, q):
     parser = qp.QueryParser(self.request)
     query = "select distinct uuid where (%s)" % q
     try:
         d = parser.runquery(self.db, query)
     except SmapException, e:
         return defer.fail(e)
コード例 #2
0
 def render_POST(self, request):
     parser = qp.QueryParser(request)
     query = "select distinct uuid where (%s)" % request.content.read()
     try:
         d = parser.runquery(self.db, query)
     except SmapException, e:
         setResponseCode(request, e, 400)
         return "query: %s\nerror: %s\n" % (query, str(e))
コード例 #3
0
    def render_POST(self, request, query=None):
        """The POST method is only used for sql-like queries.

        The logic for parsing the query, building the true SQL
        statement, and parsing out the results are in the queryparse
        and querygen modules.
        """
        # make a parser and parse the request
        parser = qp.QueryParser(request)
        if not query: query = request.content.read() 
        try: 
            # run the query locally
            d = parser.runquery(self.db, query)
        except Exception, e:
            log.err("Failing query: " + str(query))
            log.err()
            setResponseCode(request, e, 400)
            return str(e)