上一篇(初试Nodejs——使用keystonejs创建博客网站1(安装keystonejs))讲了keystonejs的安装。安装完成后,已经具备了基本的功能,我们需要对页面进行初步修改,比如,增加自己网站的logo、修改首页的介绍、对网站进行本地化等等。本文继续记录网站的基本改造过程。

首先按照上一篇的介绍,在本地安装开发版的keystoenjs网站,开发完成后,再部署到生产环境。安装完成后的目录结构是这样的:

iisnode:这是iisnode运行时的目录,不用去管它。

models:这里面是网站模型的js文件,将来开发新功能时会修改或增加模型,目前不修改模型。

node_modules:项目依赖的node模块,不用管它。

public:网站的前端js、css、图片等文件,修改样式时可能会修改这里的文件。

routes:路由,如果增加页面,会修改这里的js文件。

templates:网站的显示模板,这是我们现在需要修改的重点。keystonejs支持多种模板引擎,我选择的是jade。不管使用哪种引擎,工作原理类似。

updates:这里存放升级时执行的js文件,将来会涉及到这里的修改。

现在的任务是修改templates中的模板文件,templates中的模板文件是文本文件,可以使用任何文本编辑器进行修改,但是我们希望搭建一个开发环境,可以覆盖整个开发周期。我喜欢使用Sublime text3,在官网下载安装就可以: http://www.sublimetext.com/3 。然后安装 SublimeText-Nodejs插件,可以参考这篇文章《在windows环境下基于sublime text3的node.js开发环境搭建》。

安装完成后,打开资源管理器,将网站目录拖动到SublimeText中,整个目录结构会放置在SublimeText的左侧,选择keystone.js,右显示代码。这时,可以按 Ctl-B运行keystone.js:

在浏览器中打开http://localhost:3000就可以浏览网站了。

接下来就可以修改模板了,模板文件保存在templates目录下:

主要修改的是layouts中的default.jade和views中的各个页面的jade文件。因为现在只是初步修改,所以仅仅是将模板中的文字进行替换,经过基本改造,网站已经可以运行了。下一步,会增加几个页面,并增加一些简单的功能。

初试Nodejs——使用keystonejs创建博客网站2(修改模板)的更多相关文章

  1. 初试Nodejs——使用keystonejs创建博客网站1(安装keystonejs)

    我正在阿里云上创建一个简单的个人博客网站,刚好正在尝试NodeJs,决定找一款基于NodeJs的CMS来完成这个工作,最后找到了KeyStoneJS. KeyStoneJS是基于Express和Mon ...

  2. Github Pages和Hexo创建静态博客网站

    Github Pages和Hexo创建静态博客网站 安装Node.js 本人是window环境,所以下载window版. 下载地址:https://nodejs.org/en/download/ 下载 ...

  3. 在 Windows Azure 网站上使用 Django、Python 和 MySQL:创建博客应用程序

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 撰写. 根据您编写的应用程序,Windows Azure 网站上的基本Python 堆 ...

  4. 博客网站-Hexo+GitHub+Netlify

    Hexo+GitHub+Netlify一站式搭建属于自己的博客网站 https://www.cnblogs.com/kerbside/p/10130606.html https://hhongwen. ...

  5. Hexo+GitHub+Netlify一站式搭建属于自己的博客网站

    喜欢的话请关注我的个人博客我在马路边https://hhongwen.cn/,此文为博主原创,转载请标明出处. 更好的阅读体验请点击查看:Hexo+GitHub+Netlify一站式搭建属于自己的博客 ...

  6. Hexo+Github/Coding免费搭建个人博客网站

    体验更优排版请移步原文:http://blog.kwin.wang/other/hexo-github-build-blog.html 很早之前就想搭建一个属于自己的博客网站,一方面是给自己做笔记,把 ...

  7. Hexo系列(一) 搭建博客网站

    写在前面的话:本系列文章主要参考 Hexo官方说明文档,同时结合自己在使用过程中的一些心得体会,撷取下来,和大家分享分享.好,下面闲话不多说,马上开始我们的 Hexo 之旅吧 温馨提醒:博主使用的操作 ...

  8. Hexo+Github: 博客网站搭建完全教程(看这篇就够了)

    本篇教程首次发布在个人博客:sunhwee.com,想要获得最佳阅读体验,欢迎前往,建议用电脑查看教程文档. # 阅读须知 注意,这篇文章篇幅较长,主要针对新手,每一步很详细,所以可能会显得比较啰嗦, ...

  9. Hexo搭建个人静态博客网站

    前言 前段时间博客园整改,许多博客无法查看,偶然的机会接触到了许多博客框架,可用来快速搭建一个静态博客网站:最后选择使用hexo,看了不少大佬的教程,觉得挺有意思的,于是也总结了一下自己的搭建步骤,可 ...

随机推荐

  1. linux mail 使用外部邮箱地址发邮件

    centos 61.系统yum安装的mailx会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置麻烦,而且会带来不必要的资源占用.通过修改配置文件可以使 ...

  2. SSH Tunneling

    把本地端口 local_port 转发到服务器 server2 的 remote_port 端口上, server1 和 server2可以是同一ip或者不同ip. ssh user@server1 ...

  3. jenkins:通过execute shell启动的进程会被杀死的问题

    [问题]在jenkins中配置自动更新部署项目时,如果采取用execute shell启动/关闭tomcat,会发现可以进行关闭tomcat,但是无法启动tomcat,虽然构建会显示执行成功,但是查看 ...

  4. RBAC在thinkphp中有Auth类 可以很好的实现权限控制

    import('ORG.Util.Auth');//加载类库 $auth=new Auth(); if($auth->check('show_button',1)){// 第一个参数是规则名称, ...

  5. DapperExtensions的基本用法

    介绍下使用Dapper-Extensions的基本语法 //实体类 DemoEntity entity = new DemoEntity(); //根据实体主键删除 this.Delete<De ...

  6. js判断页面是pc打开还是手机打开

    <script type="text/javascript"> function browserRedirect() { var sUserAgent = naviga ...

  7. 关于 Integer 的一个坑

    其实 JDK 中有很多小坑, 我们稍微不注意, 就掉进去了, 然后调了半天 bug, 也不知道为何. 很闹心! 这里说一下, 在Integer中的一个小坑. 看一个小例子: @Test public ...

  8. SRM 146 DIV1 600

    Problem Statement      Masterbrain is a two player board game in which one player decides on a secre ...

  9. 基本TCP套接字编程

    1.listen函数 将主动套接字转换成一个被动套接字 backlog指定相应套接字连接队列的大小. 监听套接字有2个队列: (1)未完成连接队列,接收客户SYN,发出SYN.ACK,等待完成三次握手 ...

  10. 316. Remove Duplicate Letters

    Given a string which contains only lowercase letters, remove duplicate letters so that every letter ...