这里提出了一个类似的问题,但一个被接受的答案并没有真正回答这个问题。
使用 AngularFire,是否可以创建关系型数据库?或者访问 UniqueIDs?
通过 AngularFire 将嵌套项添加到 Firebase 时,每个项实际上都设置在另一个以数字编号的索引下。
因此,我需要使用以下相对 url 引用用户的产品:
users/:id/products
我的问题是,一旦我创建了一个用户(或任何相关的东西),我如何获得索引值?
// Get the users
var ref = new Firebase('https://myapp.firebaseio.com/users')
var promise = angularFire(ref, $scope, 'users', {})
promise.then(function() {
// Can I get the ID from here somehow?
})
// Users saves a product
id = null // ???
var product = {
name: 'new product',
desc: 'this is a new product'
}
var ref = new Firebase('https://myapp.firebaseio.com/users/' + id + '/products')
var promise = angularFire(ref, $scope, 'products', {})
promise.then(function() {
$scope.products.push(product)
})
更新
澄清一下,这不是关于用户身份验证的问题。我已经处理好了。对困惑感到抱歉。
当我开始在 Firebase 中的其他东西“下”制作东西时,我刚刚遇到了一堵砖墙。不管是user
s还是giraffe
s。
如果我制作“商店”,则每个商店都有“产品”(比方说。)
我希望能够用
stores/{storeId}/products
但storeId
理想情况下是从 AngularFire 创建的索引 ID(参见我附上的图片)。问题是,AngularFire 只是创建了这个 ID,而没有让我知道。
如果我有一些成功的功能,比如
success: function(response) {
$scope.store.id = response.indexId
}
这是最有意义的,但 AngularFire 似乎并没有准备好这个非常需要的功能。请证明我错了。:)