Coder Social home page Coder Social logo

sbf-python-rethinkdb-play's Introduction

Playing around with Rethinkdb 1.11, trying to learn its query support in python.

Tried out various queries ranging in complexity that I might encounter and to see how queries might be dynamically constructed.

Currently using sample data using embedded array documents.

Wanted to to perform queries that filter

  • by field
  • by nested field
  • by values within a range
  • if value exists in embedded array
  • any combination

eg:

  • all snowboards
  • all products in given size[s]
  • all snowboards that have x features
  • all mens snowboards in size[s] x, with board features y, that cost between a & b

using example data like this

{
    'name': 'mens snowboard 1',
    'product_type': 'snowboards',
    'sizes': [152, 157, 159, 160],
    'board_features': [
        { 'name': 'Twin Tip', 'sysname': 'twin-tip' },
        { 'name': 'Reverse Camber', 'sysname': 'reverse-camber' },
    ],
    'gender': 'mens',
    'price': 100.00,
    'brand': {
        'name': 'libtech'
    }
},    
{
    'name': 'mens snowboard 2',
    'product_type': 'snowboards',
    'sizes': [157, 164],
    'gender': 'mens',
    'price': 102.00,
    'brand': {
        'name': 'libtech'
    },
    'board_features': [
        { 'name': 'Powder Board', 'sysname': 'powder-board' },
        { 'name': 'Reverse Camber', 'sysname': 'reverse-camber' },
        { 'name': 'Directional', 'sysname': 'directional' },
    ],
}, 

to get it running:

virtualenv _env
. _/env/bin/activate
pip install -r requirements.txt 
python test_queries.py

sbf-python-rethinkdb-play's People

Stargazers

Mitchell Stanton-Cook avatar

Watchers

Shaun avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.