我要说我使用firebase创建了一个博客,每个authors
都有多个posts
编写自己的posts
。
因此,authors
集合和authors
集合具有以下规则:
我有两个问题,首先,我应该使用哪种数据库架构?
posts
集合和一个单独的authors
集合posts
个{
"rules": {
".read": true,
".write": true
}
// to complete ..
}
个集合其次,我应该使用哪种安全规则?
{{1}}
答案 0 :(得分:3)
首先:您可以使用ng-show,ng-hide,但这不是最佳解决方案。以下是DoubleClick Campaign Manager如何处理用户身份验证的链接。 https://docs.google.com/file/d/0B4F6Csor-S1cNThqekp4NUZCSmc/edit
第二:你可以用这种方式编写你的规则 - 在下面,根据需要改变数值。
{
"rules": {
"products": {
".read": true,
".write": true
},
"sectest": {
".read": true,
".write": "(newData.child('admin').child(auth.uid).exists()) ||
(data.exists() && data.child('admin').child(auth.uid).val() == auth.uid) ||
(root.child('users/'+auth.uid+'/isadmin').exists())"
},
"users": {
".write": true,
"$uid": {
".read": "auth != null && auth.uid == $uid"
}
},
"venders": {
".read": true,
".write": true
},
"channels": {
".read": true,
".write": true
}
}
}
查看此角博客示例:https://github.com/yearofmoo/hexo-angular-blog-example