最近由于个人作业需要,所以研究了下Node,然后花两周时间写了个图书馆管理系统的小项目。作业交了,这小东西藏着也没啥用,所以就拿出来交流分享下。用Mysql不用Mongodb的原因是自己在学《数据库原理》,所以就想把关系型数据库学的差不多了,再考虑Mongo。
技术栈
- Express框架 Node.js Web 应用程序框架
- Mysql数据库 Mysql是最受欢迎的开源数据库。 需要注意的是:Mysql数据库引擎一定要是支持事务的innoDB,不是的话可能不会报错,但业务可能会发生错乱。具体设置请自行百度.
- Handlebars模板引擎 Handlebars是一个高效率的语义化模板,和ejs差不多。
- Bootstrap前端框架 Bootstrap是一个简洁、直观、强悍的前端开发框架,可以帮助快速构建起简洁美观的前端界面。
相关配置
有关项目的下载、配置和运行都写在readme.md上。项目地址如下: https://github.com/lxz612/libsystem
运行截图
1.搜索
2.结果
3.书目信息
4.借阅
5.登录
6.当前借阅
7.借阅历史
8.证件信息
建议多写点内容,一个是便于他人阅读,另外也是自身的一种提高
@i5ting 👍以后补充完整,多谢前辈指导…
学学 @nswbmw 大大的文档,肯定会有很多收获的
查库用promise写比较好
不给截图和功能说明,没多少人愿意去clone代码下来看的。Readme.md相当于没内容。
没截图和功能说明 但我还是去看了看
@13241491189 今晚补图……
来自酷炫的 CNodeMD
请楼主写详细点,想学习
Message:ER_BAD_FIELD_ERROR: Unknown column ‘readerId’ in 'where clause’ Error: ER_BAD_FIELD_ERROR: Unknown column ‘readerId’ in ‘where clause’
libsystem-master\models\user.js 14行
@yakczh 你看下数据库readerId的字段有没有写对
检索部分是用数据库的查询语句呢还是用JS的Match对字符串进行匹配~~
这东西开学我搞过,结合微信的
@cctv1005s 是用SQL语句的
来自酷炫的 CNodeMD
楼主,有没有学习handlbars的教程链接分享一下,想系统学习一下,thx
@stonedu 我是推荐直接看 官方文档,都是比较容易看懂的英文,也有翻译过来的handlebars中文文档 当然开始时可以先看些入门教程。比如这篇博客 http://www.ghostchina.com/introducing-the-handlebars-js-templating-engine/ youtobe上也有些歪果仁录制的handlebars视频,也很有意思。
@lxz612 非常感谢。已收藏
@lxz612 在问个初学者问题,我在express-生成器下生成的是hbs4,和你项目里用的express3-handlebars,这两个有没有什么区别还是用起来完全相同呢?
@stonedu 还是有区别的。hbs是express4默认生成的handlebars中间件(也可以理解为handlebars引擎 ),而express-handlebars是另外一个handlebars中间件(是我自己另外找的一个)。他们功能是相同的,都是提供handlebars模板的解析,只是初始设置时写法不同而已。比如:
~~express-handlebars注册helper和partials的写法,也就是我项目里的写法
// 模板引擎设置
app.set('views', path.join(__dirname, 'views'));
app.engine('handlebars', exphbs({
defaultLayout:'layout',
helpers:helpers,//设置helper
partialsDir:[//设置partialsdir
'views/partials/'
]
}));
app.set('view engine', 'handlebars');
而hbs是这样写
app.set('views',path.join(__dirname, 'views'));
hbs.registerHelper(helpers);
hbs.registerPartials(__dirname + '/views/partials',function(){
console.log('okkkkkk');
});
app.set('view engine', 'hbs');
两者在文件组织上也有些不同。比如hbs的模板后缀名为.hbs,而express-handlebars的是.handlebars;还有express-handlebars的公共布局文件要放在layouts文件夹下,而hbs的则是放在其他布局文件同级的位置。更多的不同可以看他们的官方文档。 hbs的文档 express-handlebars的文档 我还是推荐用express-handebars,文档写的详细。
@lxz612 OK,我的疑惑明白了,太感谢了