TÂCHE: Obtenez des suggestions d'amis aléatoires de User
collection.AQL: Comment filtrer où NON IN bord
Ceci est un exemple de collection de l'utilisateur:
{
"firstname": "John",
"lastname": "Doe",
"username": "johndoe",
"email": "[email protected]"
}
J'ai aussi une collection de bord friendRequest
qui stocke les demandes d'amis comme celui-ci:
_from: "User/John" -> _to: "User/Jane"
PROBLÈME: Je veux filtrer mon auto Utilisateurs auxquels j'ai déjà envoyé une demande.
Ceci est ma requête initiale pour obtenir 3 utilisateurs hors moi
FOR user IN User
FILTER user._key != 'myself'
SORT RAND()
LIMIT 3
RETURN user
Je veux être en mesure d'exclure des gens que je l'ai déjà envoyé une demande d'utiliser quelque chose comme FILTER NOT IN (<<SOME EDGE QUERY>>)
NOTE: J'ai aussi un graphique friendRequest_graph
qui concerne friendRequest
bord entre User
collections
Pour calculer la clé de document à partir d'un document ID comme 'utilisateur/John', vous pouvez utiliser' PARSE_IDENTIFIER() ':' RETOUR PARSE_IDENTIFIER (fr._to) .key' - https: //docs.arangodb .com/3.2/AQL/Fonctions/Document.html # parseidentifier – CoDEmanX