2016-12-18 4 views
0

をFrontPageのためにMongoDBのデータを返すことはできません。NodeJsこれは私home.jsルータです

var express = require('express'); 
var bodyParser = require('body-parser'); 
var router = express.Router(); 


var Movie = require('../models/movie'); 
var urlencodedParser = bodyParser.urlencoded({extended: false}); 


// Get Homepage 
router.get('/', function(req, res){ 
    //get data from mongodb and pass it to view 
    Movie.find({}, function(err, data){ 
     if (err) throw err; 
     res.render('home', {movies: data}); 
     }); 
    }); 

function ensureAuthenticated(req, res, next){ 
    if(req.isAuthenticated()){ 
     return next(); 
    } else { 
     //req.flash('error_msg','You are not logged in'); 
     res.redirect('/users/login'); 
    } 

}; 
module.exports = router; 

これは私のモデルです/映画

var mongoose = require('mongoose'); 
var bcrypt = require('bcryptjs'); 

// Movie Schema 
var MovieSchema = mongoose.Schema({ 
    movieName: { 
     type: String, 
     index:true 
    }, 
    img: { 
     type: String 
    }, 
    description: { 
     type: String 
    }, 
}); 

var Movie = module.exports = mongoose.model('Movie', MovieSchema); 

これは

<h2 class="page-header">Резервирај Билет</h2> 
<div class="movies-block"> 
    <div class="movie"> 
    <h3>Movie #1<h3> 
    <img src="https://upload.wikimedia.org/wikipedia/en/c/c2/WALL-Eposter.jpg" width="150px" height="200px"></img></br> 
    <button type="button" name="rezerviraj">Резервирај</button> 
    </div> 

    <div class="movie"> 
    <ul> 
     <% for(var i=0; i<movies.length; i++){ %> 
     <li><%= movies[i].item %></li> 
     <% } %> 
    </ul> 
</div> 
私のホームページです

したがって、データをdbに送信できますが、取得できません。自分のMongoDBにあるデータを一番上に出したい。 目標は:管理ダッシュボードにログインし、ムービーの詳細(ムービーの名前、写真、説明)を追加します。私がそれを提出すると、それはMongoDBに行きます。そこから、フロントページがデータを要求し、それを私が望むところに置きます。今のところ、最初のページにこのコードがあります:

<% for(var i=0; i 
<%= movies[i].item %> 
<% } %> 

私は間違いを犯していますか?

答えて

1

これはコメントですが、コメントするのに十分な担当者がいません。

は今のところ、私は、フロントページ(VARに対する <%このコードを取得し、I = 0; I <% =ムービー[I] .item%> <%}%>

あなたが EJS template engine使用している

、あなたは?あなたはすでにejsview engine特急アプリを設定することを確認しているテンプレートを発現させるためにレンダリングされていないので、それは、ないように見えます。

関連する問題