- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的网络应用程序中,当用户登录时,他们应该看到他们制作的所有文档。然而,当我测试我的申请时,我看到了所有文件,包括我没有制作的文件。我相信这是因为我没有正确使用 Parse.query.equalTo。
这是我的代码:
router.post('/login', function (req, res) {
var tempname = req.body.username;
var username = tempname.toLowerCase();
var password = req.body.password;
var login = Promise.promisify(Parse.User.logIn);
var promerror = Promise.reject("error");
var Files = Parse.Object.extend("File");
var query = new Parse.Query(Files);
query.include('user');
var finds = query.find;
var doc = {};
var name, url;
return login(username, password).catch(function (error) {
}).then(function (user, error) {
query.equalTo("user", Parse.User.current());
console.log(JSON.stringify(Parse.User.current()));
if (user) {
res.render('logins', { Message: "Username and/or password don't match" });
}
var temp;
}).catch(function (err) {
res.render('logins');
}).then(query.find(function (results) {
for (var i = 0; i < results.length; i++) {
var object = results[i];
var userID = object.get('user');
console.log("current user");
var codefile = object.get('javaFile');
temp = codefile.name();
name = temp.split("-").pop();
url = codefile.url();
doc[name] = url;
}
})).catch(function (error) {
promerror(error);
}).finally(function () {
res.render('filename', { title: 'File Name', FIles: JSON.stringify(doc) });
}).done();
});
当用户登录时,应该去数据库检索用户制作的所有文档,并将其保存到doc
中,然后将doc
发送到客户端显示。
这是用户保存文件的代码:
newFile.save({ user: Parse.User.current(), fileName: newnames, javaFile: parseFile })
最佳答案
我不确定,但尝试将文件用户字段设置为对象 ID,而不是用户对象本身。解析对象有时会返回指针,有时会返回 id 等。因此,在将字段设置为 Parse.User.current()
时,您可能会遇到意外行为。除此之外,您看起来正确使用了 equalTo。
否则,基本上调试云代码的唯一方法是console.log并查看日志。
顺便说一句,您应该在保存每个文件之前设置它的 ACL...这样,用户无论如何都无法查看其他用户的文件(除非这些文件是公开的) .
关于javascript - 如何正确使用Parse.query.equalTo?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30717909/
当我尝试在 Google 上搜索此错误时,我什么也没找到:“ Uncaught Error :Query.equalTo:之前调用过 startAt() 或 equalTo()!”。 (一个没有说明什
当我试图通过电子邮件或电话号码查找记录时,我一直在使用下面的两个代码,有时第一个代码工作正常有时不起作用,第二个代码也一样。 下面的代码和什么时候应该使用“equalTo”或“startAt and
这是我目前用来尝试验证表单的方法。当我在表单中未输入任何值的情况下按“提交”时,我会按预期收到每个输入的错误消息。但是,无论我在 newpassword2 或 newemail2 中输入什么,它们都不
在我的网络应用程序中,当用户登录时,他们应该看到他们制作的所有文档。然而,当我测试我的申请时,我看到了所有文件,包括我没有制作的文件。我相信这是因为我没有正确使用 Parse.query.equalT
我想使用 validate.js 验证我的表单并匹配密码。我编写了以下代码: $(document).ready(function () { $("#signup-form").validat
我在使用 Firebase 时遇到问题;我正在尝试用 javascript 检索我的所有帖子,这些帖子以正确的语言“发布”并按发布日期排序。 我的 Firebase 数据库是这样的: { posts:
我有以下 PHPUnit 测试用例: $mailer = $this->getMockBuilder(MailerInterface::class)->getMock(); $simp
我正在使用简单模式打开注册表单。我正在尝试验证密码并确认密码,但密码字段始终为空,有什么想法吗? var validator = $("#registrationForm").vali
使用 jquery 验证插件,我使用规则 equalTo 来验证字段,如下所示: $('#booking').validate({ ignoreTitle: true, rules: { pa
我的查询应该搜索解析类并返回所有 PFObject(如果它们包含标签数组中的字符串)。没有 whereKey: equalTo: 代码可以工作并且所有对象都会显示,但没有它则什么也不显示。 impor
当我在没有任何查询的情况下从数据库中获取所有数据时,我从数据库中获取了最后的条目(生成的键就是以这种方式工作的)。像这样: var ref = firebase.database().ref('myO
我在 firebase 中的数据如下所示。 items { item1: { field1: value1 field2: value2 } item2: {
我在 PHPUnit 中遇到问题,我想在比较日期时在 equalTo 方法中使用 delta 参数。假设我想将相差不超过 10 秒的日期视为相等的日期。 $some_delta 的适当值是多少? 10
我正在使用以下代码使用放心库进行服务调用,您能帮我解决构建问题吗?查找函数 "equalTo" 来验证响应数据时出现问题。 请参阅下面的错误: 这是我的代码: @Test public void te
我正在使用此查询来验证我的 Firebase 上是否存在数据(使用 AngularFire2) let aux = this.afData.list("/drivers", { query: { or
我正在使用jQuery Validate plugin在我的 Grails 应用程序中,以下是来自 GSP 的验证代码: $(document).ready(function() {
我正在尝试更改列表中的某些项目 - 不是所有项目,因为这是一个巨大的列表,可以由很多人修改。 const ref = firebase.database() .
我正在做一个非常简单的验证,检查两个字段是否相等。不幸的是,它似乎不起作用(当它应该返回 true 时返回 false)。 这是 jQuery(#profSet 是主要形式):
$('#reg_form').validate({ onkeyup: false, errorClass: 'error',
var data = [ { Id: 1, key: 'text', text: 'Hide', language: 'write', translation: 'q
我是一名优秀的程序员,十分优秀!