我是Backand和后端领域的新手,我需要一些启示。基本上我正在尝试创建一个用户可以注册和登录的应用程序。当用户登录时,他可以创建简单的东西,例如待办事项列表。待办事项列表随后保存在数据库中,并且只能由创建它的用户在页面上查看。
到目前为止,还有一个注册,登录和创建/发布项目的功能。当前用户身份验证基本上与示例中的相同:
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
});
};
虽然发布项目的功能就是这样,然后是GET请求在网页上获取它。
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
}
});
};
现在我需要创建的项目仅供创建它的用户查看(登录时)。所以问题是,我该怎么做?你下一步怎么做?是否有任何教程/文档来实现这一目标?我有点卡住所以任何帮助表示赞赏! :)
答案 0 :(得分:1)
Backand有一个简单的解决方案
看起来应该是这样的
{
"$or": [
{
"'{{sys::role}}'": "'Admin'"
},
{
"user": {
"$in": {
"object": "users",
"q": {
"email": {
"$eq": "'{{sys::username}}'"
}
},
"fields": [
"id"
]
}
}
}
]
}
或者是sql版本:
( 'Admin' = '{{sys::role}}') or (`items`.`user` in (select `users`.`id` from `users` where `users`.`email` = '{{sys::username}}'))