Я не понимаю, почему мой запрос к моей базе данных Firebase не работает. Я новичок в этом и решил следовать «простому учебнику» для чтения данных. Написание JSON-объекта работало, было очень приятно видеть это. Чтение с другой стороны начинает меня раздражать. Единственное, что я хотел сделать, это прочитать «запись», в которой адрес электронной почты был равен некоторому адресу электронной почты. Они уникальны и уникальны в пользовательской базе данных. Как только я получил пользователя, я мог использовать его UID, автоматически генерируемое значение в push() ;, чтобы делать другие вещи. Следовательно, это демонстрация, и я не забочусь о безопасности в данный момент, применим поведение по умолчанию для чтения и записи недавно созданной базы данных Firebase. Полный доступ для чтения и записи из любого места.Firebase: query возвращает null
это код демо-сайта, чтобы увидеть, если материал работает
<body>
<h1>retrieve data</h1>
<div id="aaa" style="margin:20px;padding:20px;border-radius:30px;background-color:#6666FF;float:left">USERADD</div>
<div style="clear:both"></div>
<pre id="rawdata"></pre>
</body>
Это был демонстрационный код, который работал
var demofbdb = new Firebase("https://examples-sql-queries.firebaseio.com/user");
demofbdb
.startAt('[email protected]')
.endAt('[email protected]')
.once('value', function show(record) {
$('#rawdata').text(JSON.stringify(record.val(), null, 4));
});
Это мой код, но возвращает нуль, и я не знаю, почему
var demofbdb = new Firebase("https://<my-firebase-database>.firebaseio.com/Users");
demofbdb
.startAt('[email protected]')
.endAt('[email protected]')
.once('value', function show(record) {
$('#rawdata').text(JSON.stringify(record.val(), null, 4));
});
Это структура/Users
"-JlyxV5xvQFLybevk9kD" : {
"AccountExpireDate" : "31/03/2016",
"AccountStartDate" : "01/04/2015",
"Alias" : "het hol van pluto",
"Attended" : {
"-JlyxMApRwcniJLXfqbU" : true
},
"Birthday" : "01/01/1970",
"E-Mail" : "[email protected]",
"FirstName" : "Demo",
"LastName" : "De Demoon",
"MemberOf" : [ "-JlyxMqpRw5nrJLef9bU" ],
"OrganizationID" : "",
"Password" : "abc123!"
},
"-JlyxSJ8MciBNxguT415" : {
"AccountExpireDate" : "31/03/2016",
"AccountStartDate" : "01/04/2015",
"Alias" : "jos-het-debiele-ei",
"Attended" : {
"-JlyxMApRwcniJLXfqbU" : true
},
"Birthday" : "01/01/1970",
"E-Mail" : "[email protected]",
"FirstName" : "Jos",
"LastName" : "Jossers",
"MemberOf" : [ "-JlyxMqpRw5nrJLef9bU" ],
"OrganizationID" : "",
"Password" : "abc123!"
}
Для уточнения этой структуры «UID» находятся непосредственно под пользователями. Когда UID разворачиваются, мы видим детали.
Ожидаемый результат моего запроса - это один объект JSON пользователя, имя которого является «Демо», а его фамилия - «De Demoon».
Заранее спасибо
PS: Я больше знаком с базами данных SQL, чем NoSQL. Я вынужден использовать этот последний, кроме того, что я вижу базы данных noSQL более полезными и мощными, когда у нас есть «предварительно вычислимые данные», данные, которые могут храниться в реляционной базе данных, но всегда должны проходить через те же объединения одним путем. После того, как эти результаты были рассчитаны (объединены) один раз и результаты, записанные в базу данных noSQL, ускоряют поиск быстрее, уменьшая ненужную нагрузку и группируя вместе часто запрашиваемые наборы данных. Пожалуйста, также исправьте мое видение, если я ошибаюсь.
Мой Спаситель! orderByChild исправил это. Не заметил, что это было необходимо, если не был использован setPriority. Думал, что могу просто подтолкнуть данные к firebase и запросить его, похоже, что я ошибся. Вещи, которые происходят во время обучения, я думаю. – jonny8bit