I'm new to Backand and the backend field overall, and I need some enlightenment. Basically I'm trying to make an application where users can register and sign in. While the user is signed in he can create simple things, for example a to-do list. The to-do list is then saved on the database and can only be viewed on the page by the user who created it.
So far there is a function for signing up, logging in and create/post items. The current user authentications are basically like in the examples:
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
});
};
While the function for posting items is just something like this, and then a GET request to get it on the webpage.
var addList = function (title, comment) {
return $http({
method: 'POST',
url: "https://api.backand.com/1/objects/lists",
headers: {
'Content-Type': 'application/json'
},
data: {
title: title,
comment: comment
}
});
};
Now i need the items created only to be viewed by the user who created it (while logged in). So the question is, how do I do this? What is the next step? Are there any tutorials/documentation for achieving this? I'm kind of stuck so any help is appreciated! :)
Backand has a simple solution for that
It should look something like this
{
"$or": [
{
"'{{sys::role}}'": "'Admin'"
},
{
"user": {
"$in": {
"object": "users",
"q": {
"email": {
"$eq": "'{{sys::username}}'"
}
},
"fields": [
"id"
]
}
}
}
]
}
Or an sql version:
( 'Admin' = '{{sys::role}}') or (`items`.`user` in (select `users`.`id` from `users` where `users`.`email` = '{{sys::username}}'))