2016-06-29 11 views
0

Ich bin neu in Backand und das Backend-Feld insgesamt, und ich brauche etwas Aufklärung. Im Grunde versuche ich eine Anwendung zu erstellen, bei der sich Benutzer registrieren und anmelden können. Während der Benutzer angemeldet ist, kann er einfache Dinge erstellen, zum Beispiel eine To-Do-Liste. Die To-Do-Liste wird dann in der Datenbank gespeichert und kann nur auf der Seite von dem Benutzer angezeigt werden, der sie erstellt hat.Benutzerspezifische Inhalte

Bisher gibt es eine Funktion zum Anmelden, Anmelden und Erstellen/Buchen von Artikeln. Die aktuellen Benutzer Authentifizierungen sind im Grunde wie in den Beispielen:

var signin = function (username, password) { 
    return Backand.signin(username, password) 
     .then(function (response) { 
      return response; 
     }); 
}; 

var signUp = function (user) { 
    return $http({ 
     method: 'POST', 
     url: 'https://api.backand.com/1/user/signup', 
     headers: { 
      'SignUpToken': "#####" 
     }, 
     data: user 
    }); 
}; 

Während die Funktionselemente für die Buchung ist nur so etwas, und dann eine GET-Anforderung, um es auf der Webseite zu erhalten.

Jetzt brauche ich die Elemente erstellt, nur um von dem Benutzer, der es erstellt hat (wenn angemeldet) angezeigt werden. Die Frage ist also, wie mache ich das? Was ist der nächste Schritt? Gibt es Tutorials/Dokumentation, um dies zu erreichen? Ich bin irgendwie fest, so dass jede Hilfe geschätzt wird! :)

Antwort

1

backand hat eine einfache Lösung für das

  1. Auf backand Panel Objekte gehen >> To-dos >> Sicherheit
  2. Unter dem Vordefinierte Filter Sie einen Assistenten sehen werden erstellen ein nosql- oder sql-Filter Ihr Anfangszustand ist bereit für die Erzeugung des genauen Filters, den Sie beschrieben haben, gehen Sie einfach über es sehen, ob es wahr ist oder Änderungen vornehmen und dann auf "Get Code"
  3. klicken Sie auf Validieren & Update, wenn es keine Fehler gibt, genehmigen Sie die Nachricht und Ihr gesetzt

Es sollte etwas so aussehen

{ 
    "$or": [ 
    { 
     "'{{sys::role}}'": "'Admin'" 
    }, 
    { 
     "user": { 
     "$in": { 
      "object": "users", 
      "q": { 
      "email": { 
       "$eq": "'{{sys::username}}'" 
      } 
      }, 
      "fields": [ 
      "id" 
      ] 
     } 
     } 
    } 
    ] 
} 

oder eine sQL-Version gehen:

('Admin' = '{{sys::role}}') or (`items`.`user` in (select `users`.`id` from `users` where `users`.`email` = '{{sys::username}}')) 
+0

Danke, war sich dieser Option nicht bewusst. Aber wenn ich das hinzugefügt habe, können Sie nur Artikel posten, wenn Sie als Administrator und nicht als normaler Benutzer angemeldet sind. Es wurde wie folgt hinzugefügt: '('{{sys :: role}}' = 'Admin') ODER (items.created_by IN ((SELECT user id VON Benutzern WHERE (users.email = '{{sys :: username}} ')))) ' – qua1ity

+0

haben Sie die Sicherheitsvorlage überprüft, hat der Benutzer Berechtigungen erstellen? – user3375230

+0

Ja, entsprechend der Sicherheitsvorlage sollte die Benutzerrolle die gleichen Berechtigungen haben wie die Administratorrolle – qua1ity

Verwandte Themen