2017-08-07 2 views
1

Ich habe eine Benutzerauswahl in meine App in Google App Maker implementiert und das Verzeichnis synchronisiert. Es funktioniert, wenn ich es benutze und speichert die E-Mail-Adresse in der Projekt-Datenquelle, die ich eingerichtet habe, aber ich möchte auch das zugehörige PrimaryPhone und FullName der E-Mail-Adresse als separate Variablen in meiner Projektdatenbank aufzeichnen. Ich weiß nicht, ob das Code in einem Skript oder in der Datenquelle onCreate oder onLoad sein wird. Jede Hilfe zu diesem Thema wäre sehr willkommen.Aufnahme Telefonnummer und vollständiger Name in Projekt Datenquelle

Antwort

1

Wenn Sie sich Sorgen um die Sicherheit und die Datenkonsistenz sind, dann können Sie mit Server-Implementierung gehen:

// onCreate model event handler (takes about-to-create record as parameter) 
var query = app.models.Directory.newQuery(); 

// assuming that email field value is populated by UserPicker widget on client-side 
query.filters.PrimaryEmail._equals = record.Email; 
var people = query.run(); 

if (people.length === 1) { 
    var person = people[0]; 

    record.FullName = person.FullName; 
    record.PrimaryPhone = person.PrimaryPhone; 
} else { 
    // TODO: handle edge cases 
} 

Wenn Sie nicht Paranoiker über Sicherheit sind, können Sie:

  1. konfigurieren UserPicker zu Wählen Sie das gesamte Objekt aus (markieren Sie das Kontrollkästchen "valueIsRecord"). Ereignis
  2. Griff onValueEdit UserPicker widget:
// onValueEdit UserPicker event 
// assuming that widget is bound to datasource's create mode item 
var draft = widget.datasource.item; 

draft.Email = newValue.PrimaryEmail; 
draft.FullName = newValue.FullName; 
draft.PrimaryPhone = newValue.PrimaryPhone; 
+0

Vielen Dank habe ich die Server-Seite Implementierung. Funktioniert super! –

Verwandte Themen