0

So I have a dynamic query and I'm wondering is there a way to trace what statement its exactly executing for tracing purposes?

r.db('appname').table('food')
    .hasFields({'fruits': {'secondary': true}})
    .filter(function(row) {
        var userDefaultCondition = [];
        _.forEach(params.userDefault, function(service) {
            userDefaultCondition.push(row('fruits')('favorite').match(service));
        });

        var userRequestedCondition = [];
        _.forEach(params.userRequested, function(service) {
            userRequestedCondition.push(row('fruits')('favorite').match(service));
        });

        return r.and(
              row('inventory')('status').match('AVAILABLE')
          ).and(
            r.or(
                userDefaultCondition
            ).and(
              r.or(
                userRequestedCondition
              )
            )
          )
    })
Woppi
  • 5,303
  • 11
  • 57
  • 81

1 Answers1

0

I figured it out, to trace query, you need to assign it to a variable and apply toString().

var query = r.db('appname').table('food')
.hasFields({'fruits': {'secondary': true}})
.filter(function(row) {
    var userDefaultCondition = [];
    _.forEach(params.userDefault, function(service) {
        userDefaultCondition.push(row('fruits')('favorite').match(service));
    });

    var userRequestedCondition = [];
    _.forEach(params.userRequested, function(service) {
        userRequestedCondition.push(row('fruits')('favorite').match(service));
    });

    return r.and(
          row('inventory')('status').match('AVAILABLE')
      ).and(
        r.or(
            userDefaultCondition
        ).and(
          r.or(
            userRequestedCondition
          )
        )
      )
});

//trace query
console.log(query.toString());

//run query
query.run()
.then(function(res) {
    console.log(res);
}).error(function(err){
    console.log(err);
});

Thanks to: http://www.ronniesan.com/viewing-a-dynamically-generated-reql-query/

P.S This query is not yet working as expected as I'm still figuring out how to do dynamic rethinkdb queries

Woppi
  • 5,303
  • 11
  • 57
  • 81