2014-04-19 1 views
1

Когда я прохожу через свой объект, все работает, и я могу отобразить все его экземпляры на странице. Проблема в том, что я хочу иметь возможность выбрать конкретный ключ объекта, посредством которого каждый объект, имеющий этот ключ, отображает соответствующее значение на странице.Как отображать и получать доступ к отдельным значениям ключей с помощью JADE

Мой код ниже с более четким объяснением

Mongoose.js схемы

var synthSchema = mongoose.Schema({ 
    patchName: String, 
    synths: Object, 

}); 

var SynthObject = mongoose.model('Synth', synthSchema); 

Node.js/Экспресс код

var synthPatch = new SynthObject({}) 

synthPatch.synths = [{ 
     synth_name: "blah blah", 
     xpos: 12, 
     ypos: 23 
    }, 

    { 
     synth_name: "more blah blah", 
     xpos: 02, 
     ypos: 238 
    }, 

] 



synthPatch.save(function (err, ok) { 
    if (err) return console.error(err); 

}); 


app.get('/returnedData', function(req, res){ 
    SynthObject.find({}, function (err, docs) { 
    res.render('returnedData', { 
     title: 'Tasks index view', 
     docs: docs 
    }); 
    }); 
}); 

JADE

table.table 

     each synth in docs 
     tr 
      td #{synth} 

      ul 

Приведенный выше код выхода (из MongoDB)

{ synths: [ 

    { synth_name: 'blah blah', xpos: 12, ypos: 23 }, 
    { synth_name: 'more blah blah', xpos: 2, ypos: 238 } 

    ], 

_id: 5352c4c46f5127d40e7ba8ec, __v: 0 

} 

Хорошо до сих пор так хорошо. Приведенный выше код только то, что я хотел, так что давайте цикл через него и получить ключи и значения

код JADE

each synthObject in docs 
     tr 
      each value, key in synthObject.synths 
       each v, k in value 
        td #{k} #{v} 

Совершенных ... это выводит следующее

ypos 23 xpos 12 synth_name 'blah blah' 
ypos 238 xpos 2 synth_name 'more blah blah' 

Тем не менее, теперь я сталкиваюсь с проблемой, которую я хочу выбрать, что-то вроде всего synth_name от ev ery и вывести все имя synth_name значения. Я пробовал кучу вещей, но не могу заставить его работать.

ответ

0

Это похоже на работу ..... е или сейчас

each synthObject in docs 
     each item in synthObject.synths 
       li #{item.synth_name} #{item.xpos} #{item.ypos} 
0

Я проверил это на: http://jade-lang.com/demo/

Он работает? Единственное отличие, которое я сделал, это использовать «docs» вместо «synths» данных mongo.

Джейд Входные

table.table 
each synth in docs 
    tr 
    td #{synth.synth_name} 

Locals

{ docs: [ 

    { synth_name: 'blah blah', xpos: 12, ypos: 23 }, 
    { synth_name: 'more blah blah', xpos: 2, ypos: 238 } 

    ], 

_id: "5352c4c46f5127d40e7ba8ec", __v: 0 

} 

приводит:

<table class="table"> 
    <tr></tr> 
    <td>blah blah</td> 
    <tr></tr> 
    <td>more blah blah</td> 
</table> 
+0

Я понятия не имею, почему, но это не работает для меня. Я получаю пустую страницу – William

Смежные вопросы