2017-09-07 3 views
1

J'utilise la bibliothèque php-on-couch pour récupérer des données de couchdb Je veux récupérer base sur où condition. Je veux des données en fonction de l'utilisateur qui est connecté. Mon code ci-dessous récupère une vue appelée comptes, mais je veux récupérer sans créer de vues sur couchdb. Toute aide est très appréciéeComment faire pour interroger dynamiquement canapé db

try { 
    $doc = $client->asArray()->getView('accounts', 'accounts'); 
} catch (Exception $e) { 
    if ($e->code() == 404) { 
     echo "View not found\n"; 
    } else { 
     echo "Error: " . $e->getMessage() . " (errcode=" . $e->getCode() . ")\n"; 
    } 
    exit(1); 
} 
print_r($doc); 

est-il une meilleure façon de créer dynamiquement une vue sur la récupération comme mysql fait?

Répondre

1

utilisant php-on-couch vous pouvez le faire

try { 

    $opts = array("include_docs" => true, "key" => "your user name"); 
    $doc = $client->setQueryParameters($opts)->getView("accounts", "accounts"); 

} catch (Exception $e) { 
    if ($e->code() == 404) { 
     echo "Account not found\n"; 
    } else { 
     echo "Error: " . $e->getMessage() . " (errcode=" . $e->getCode() . ")\n"; 
    } 
    exit(1); 
} 
print_r($doc); 

Assurez-vous que vous émettez le nom d'utilisateur comme clé dans les comptes voir. Couch db va chercher dans tous les comptes de la vue et vous donner le document qui contient votre nom d'utilisateur.

emit(doc.username, doc); 

Hope it helps le reste de vous en utilisant CouchDB en php