У меня возникли проблемы с созданием отношений «один ко многим» в Parse (js) и запросов к результатам.Отношения во многих отношениях в Parse (js) и вложенных запросах
У меня есть стол для ресторанов и таблица меню. Ресторан может иметь много пунктов меню и они определены как таковые:
Ресторан Таблица
restaurant_name (строка)
адреса (строка)
меню Таблица
menu_item_name (строка)
ресторан (указатель на стол ресторана)
Как бы я мог показать все рестораны и там уважаемые e пунктов меню?
Сейчас я показываю, что это console.log(), но я не уверен, как это сделать. Ниже приведен код, с которым я работал.
<script>
function getRestaurants(){
Parse.initialize("...", "...");
var Restaurant = Parse.Object.extend("Restaurant");
var Menu = Parse.Object.extend("Menu");
var query = new Parse.Query(Restaurant);
query.find({
success:function(results){
for(var i in results){
//second loop- for menu items
var query2 = new Parse.Query(Menu);
query2.include("restaurant");
query2.find({
success:function(results2){
for(var j in results2){
if(results[i] == results2[j].get("restaurant");){
//display restaurant name and all menu items
}
}
}, error: function(error){
console.log("Query Error"+error.message);
}
});
}
},
error: function(error){
console.log("Query Error"+error.message);
}
});
}
getRestaurants();
</script>
Edit 1
Как доказательство концепции, я хотел бы показать это на консоли - Примечание: этот пример предполагает, что есть 3 ресторана в таблице и каждая из них содержит 2 пунктов меню. Это не всегда так; количество ресторанов и количество пунктов меню не являются статичными:
Название ресторана 1
- Меню Имя Пункт 1
- Меню Имя Пункт 2
Название ресторана 2
- Меню имя элемента 1
- Меню имя пункт 2
название ресторана 3
- Меню имя пункт 1
- Меню имя пункт 2
Вы поднимаете некоторые хорошие моменты. Да, количество ресторанов не является статичным, что является одной из частей, с которыми я борюсь. Как мне это сделать? –
@MichaelSmith, одна из альтернатив - использовать массив массивов. Пожалуйста, см. Мое редактирование, как я это сделал. –