学习nodejs笔记二

来源:互联网 发布:ftp yum 源安装 编辑:程序博客网 时间:2024/05/17 03:31

目录结构

head.jade

link(href="/libs/bootstrap/dist/css/bootstrap.min.css", rel="stylesheet")
script(src="/libs/jquery/dist/jquery.min.js")
script(src="/libs/bootstrap/dist/js/bootstrap.min.js")

header.jade

.container
  .row
    .page-header.clearfix
      h1= title
      .col-md-4
        small 重度科幻迷

admin.jade

extends ../layout


block content
  .container
    .row
      form.form-horizontal(method="post", action="/admin/movie", enctype="multipart/form-data")
        .form-group
          label.col-sm-2.control-label 豆瓣同步
          .col-sm-10
            input#douban.form-control(type="text")
        if movie._id
          input(type="hidden", name="movie[_id]", value=movie._id)
        .form-group
          label.col-sm-2.control-label(for="inputTitle") 电影名字
          .col-sm-10
            input#inputTitle.form-control(type="text", name="movie[title]", value=movie.title)
        .form-group
          label.col-sm-2.control-label(for="inputDoctor") 电影导演
          .col-sm-10
            input#inputDoctor.form-control(type="text", name="movie[doctor]", value=movie.doctor)
        .form-group
          label.col-sm-2.control-label(for="inputCountry") 国家
          .col-sm-10
            input#inputCountry.form-control(type="text", name="movie[country]", value=movie.country)
        .form-group
          label.col-sm-2.control-label(for="inputLanguage") 语种
          .col-sm-10
            input#inputLanguage.form-control(type="text", name="movie[language]", value=movie.language)
        .form-group
          label.col-sm-2.control-label(for="inputPoster") 海报地址
          .col-sm-10
            input#inputPoster.form-control(type="text", name="movie[poster]", value=movie.poster)
        .form-group
          label.col-sm-2.control-label(for="uploadPoster") 海报上传
          .col-sm-10
            input#uploadPoster(type="file", name="uploadPoster")
        .form-group
          label.col-sm-2.control-label(for="inputFlash") 片源地址
          .col-sm-10
            input#inputFlash.form-control(type="text", name="movie[flash]", value=movie.flash)
        .form-group
          label.col-sm-2.control-label(for="inputYear") 上映年代
          .col-sm-10
            input#inputYear.form-control(type="text", name="movie[year]", value=movie.year)
        .form-group
          label.col-sm-2.control-label(for="inputSummary") 电影简介
          .col-sm-10
            textarea#inputSummary.form-control(type="text", name="movie[summary]")= movie.summary
        .form-group
          .col-sm-offset-2.col-sm-10
          button.btn.btn-default(type="submit") 录入

detail.jade

extends ../layout


block content
  .container
    .row
      .col-md-7
        embed(src="#{movie.flash}", allowFullScreen="true", quality="high", width="720", height="600", align="middle", allowScriptAcess="always", type="application/x-shockwave-flash")
      .col-md-5
        .dl-horizontal
          dt 电影名字
          dd= movie.title
          dt 导演
          dd= movie.doctor
          dt 国家
          dd= movie.country
          dt 语言
          dd= movie.language
          dt 上映年份
          dd= movie.year
          dt 简介
          dd= movie.summary

index.jade

extends ../layout


block content
.container
.row
each item in movies
.col-md-2
.thumbnail
a(href="/movie/#{item._id}")
img(src="#{item.poster}", alt="#{item.title}")
.caption
h3 #{item.title}
p: a.btn.btn-primary(href="/movie/#{item._id}",role="button")
观看影片

list.jade

extends ../layout


block content
  .container
    .row
      table.table.table-hover.table-bordered
        thead
          tr
            th 电影名字
            th 导演
            th 国家
            th 上映年份
            th 录入时间
            th 查看
            th 修改
            th 删除
        tbody
          each item in movies
            tr(class="item-id-#{item._id}")
              td #{item.title}
              td #{item.doctor}
              td #{item.country}
              td #{item.year}
              //td #{moment(item.meta.updateAt).format('MM/DD/YYYY')}
              td: a(target="_blank", href="/movie/#{item._id}") 查看
              td: a(target="_blank", href="/admin/movie/update/#{item._id}") 修改
              td
                button.btn.btn-danger.del(type="button", data-id="#{item._id}") 删除

layout.jade

doctype
html
head
meta(charset="utf-8")
include ./includes/head
body
include ./includes/header
block content

app.js

var express = require('express');
var path = require('path')
var port = process.env.PORT || 3000;
var app = express();


app.set('views','views/pages');
app.set('view engine','jade');
app.use(express.static(path.join(__dirname, 'public')));
app.listen(port);


app.get('/',function(req,res){
res.render('index',{
title : "index",
movies:[{
title:'jxjs',
_id:1,
poster:"http://r3.ykimg.com/05160000530eeb63675839160d0b79d5"
}]
})
})


app.get('/movie/:id',function(req,res){
res.render('detail',{
title : "detail",
movie :{
doctor:'dd',
country:'ee',
title:'sss',
year:2014,
poster:'http://r3.ykimg.com/05160000530eeb63675839160d0b79d5',
language:'english',
flash:'http://player.youku.com/player.php/sid/XNjA1Njc0NTUy/v.swf',
summary:'slsjlsj'


}
})
})


app.get('/admin/movie',function(req,res){
res.render('admin',{
title : "admin",
movie:{
title:'',
doctor:'',
country:'',
year:'',
poster:'',
flash:'',
summary:'',
language:''
}
})
})


app.get('/admin/list',function(req,res){
res.render('list',{
title : "list",
movies :[{
_id:1,
doctor:'dd',
country:'ee',
title:'sss',
year:2014,
poster:'http://r3.ykimg.com/05160000530eeb63675839160d0b79d5',
language:'english',
flash:'http://player.youku.com/player.php/sid/XNjA1Njc0NTUy/v.swf',
summary:'slsjlsj'


}]
})
})

0 0
原创粉丝点击