У меня есть приложение в позвоночнике, где я хочу найти внутри Json некоторые записи и распечатать.Рекурсивная функция jquery с основой
мой JSON как это:
[
{
"id" : "r1",
"hotel_id" : "1",
"name" : "Single",
"level" : "1"
},
{
"id" : "r1_1",
"hotel_id" : "1",
"name" : "Double",
"level" : "2"
},
{
"id" : "r1_3",
"hotel_id" : "1",
"name" : "Double for single",
"level" : "1"
},
{
"id" : "r1_4",
"hotel_id" : "1",
"name" : "Triple",
"level" : "3"
},
{
"id" : "r2",
"hotel_id" : "2",
"name" : "Single",
"level" : "1"
},
{
"id" : "r2_1",
"hotel_id" : "2",
"name" : "Triple",
"level" : "1"
}
]
Я хочу, чтобы объединить каждую комнату для каждого отеля на уровне. В каждом отеле может быть больше номеров, но уникальный уровень. Моя цель состоит в том, чтобы напечатать что-то вроде этого в гостиницу, где ID = 1 (то же самое для других с различной комбинацией): Первой комбинации для отеля с идентификатором 1:
Room "Single", "level" : "1" , "hotel_id" : "1"
Room "Double", "level" : "2" , , "hotel_id" : "1"
Room "Triple", "level" : "3" , , "hotel_id" : "1"
Второй комбинацией для отеля с идентификатором 1:
Room "Double for single", "level" : "1" , "hotel_id" : "1"
Room "Double", "level" : "2" , , "hotel_id" : "1"
Room "Triple", "level" : "3" , , "hotel_id" : "1"
каждого отель может иметь больше номеров какой-то уровня, но я хочу, чтобы построить комбинацию с одной комнатой Еогеасп отелем.
Это мой синтаксический анализ в позвоночнике, но я только извлекаю JSON внутри allRooms.
//each for all my hotel
_.each(this.collection.models, function(hotel) {
var rooms = new Array();
rooms.push(allRooms.where({hotel_id : hotel.id}));
//this is where I have to construct my combination
//this is the array for each combination
hotel.get('rooms').push(rooms);
});
Как построить эту комбинацию?
Да, лучше, если вы можете положить его в основу, просто попробовать, если сможете в своем браузере –
Готово! Ничего себе, какая сложная задача. –
+1 для фиксации моего кода и его интеграции в базовую. Я бы лучше посмотрел на свою собственную «декартовую» функцию, я забыл, что она не берет массивы (или, по крайней мере, необходимо адаптировать). – Bergi