2017-09-30 5 views
0

En utilisant pynamodb, je veux obtenir toutes les clés de plage qui correspondent à une certaine clé de hachage dans une table.pynamodb - Récupère les entrées DB avec la seule clé de hachage

Je sais que je peux faire une analyse, puis filtrer les entrées qui correspondent à la clé de hachage comme ceci:

from pynamodb.models import Model 
from pynamodb.attributes import UnicodeAttribute 

class Users(Model): 
    class Meta: 
     table_name = 'user_posts' 
    username = UnicodeAttribute(hash_key=True) 
    post_id = UnicodeAttribute(range_key=True) 

# Get all post_id's for a username 
user = 'johndoe22' 
posts = [] 

for entry in Users.scan(): 
    if entry.username == user: 
     posts.append(entry.post_id) 

Je voudrais passer la logique de filtrage au niveau de la requête, donc je n'ai pas pour abattre tout le contenu de la DB. Comment puis-je atteindre cet objectif?

Répondre