2013-07-29 2 views
0

У меня возникли проблемы при визуализации шаблона нефрита, где я хотел бы передать переменный массив с объектами, содержащий ObjectId (fmor Монго)Ошибка при использовании JADE и мангуста объектов

{ name: 'fake', 
    slug: 'FAKE', 
    address: 'fake', 
    city: 'Madrid', 
    country: 'Spain', 
    _owner: 51f65388f98a405469000003, 
    _id: 51f65389f98a405469000007} 

Это представление при выполнении # {объектов}.

Это, очевидно, ведет к TOKEN ILLEGAL ... Как вставить эти переменные в нефрит, не нарушая ничего.

+0

Я попытался воссоздать это на моей машине, и я также получаю ObjectIds не в кавычках при выполнении console.log объекта, который я передаю для нефрита, и он отлично работает. Можете ли вы показать часть своего нефритового кода? И, возможно, дайте нам знать, какую версию нефрита вы используете? – Third

ответ

3

Похоже, что из-за недостающих котировок вы должны преобразовать _owner и _id в строки перед тем, как перейти к шаблону.

{ 
    name: 'fake', 
    slug: 'FAKE', 
    address: 'fake', 
    city: 'Madrid', 
    country: 'Spain', 
    _owner: '51f65388f98a405469000003', // convert to string 
    _id: '51f65389f98a405469000007'  // convert to string 
} 

В мангуста, вы можете сделать

obj._owner.toHexString(); 
obj._id.toHexString(); 
Смежные вопросы