前言:回顧前面零零碎碎寫的三篇掛着Nodejs學習筆記的文章,着實有點名不副實,當然,這篇可能還是要繼續走着離主線越走越遠的路子,從簡短的介紹什么是Nodejs,到如何尋找一個可以調試的Nodejs IDE再到未爬先走的搭建一個小小的nodejs application,一直都是貫徹“學習筆記”的精神,想到哪寫到哪,遇到什么問題就去解決並記錄。如果你不幸讀到本筆記,還請記住這是一系列形散神不散的學習筆記!!!
好了,每次不扯幾句感覺沒法開場似的。本篇形散於要穿插如何利用github管理自己的代碼,而神不散於要繼續上篇的《Nodejs學習筆記(三)——一張圖看懂Nodejs建站》講述下不通過偽造數據而是真實的把玩mongodb一番,實現真真正正的有前后台有數據庫的application。
上篇使用Nodejs搭建了一個網站應用,我也已經將這些代碼傳到我的github(https://github.com/DMinerJackie)上了,有興趣的可以下載或者在線查看,但是作為一個像樣的完整的網站應用,不能沒有數據庫的支持。所以,這里跟着Scott老師繼續學習了如果使用mongodb這個nosql存儲數據並實現增刪改查的。相比上篇這里主要要提到的有以下幾點:
1.有關mongodb
1.1 Mongodb數據庫的安裝和使用
關於mongodb的下載安裝配置,這里《windows下MongoDB的安裝及配置》寫的很清楚。
補充下如果要當成一種服務直接使用的話,可以按照如下操作:
進入到你存放安裝mongodb的目錄下的bin文件夾,執行命令mongod.exe --install --logpath=E:\software\mongodb\mongo.log --dbpath=E:\software\mongodb\data\db
logpath是存放日志的位置,dbpath是存放數據的數據庫的位置
總之,你執行完這個命令后,在運行命令行中輸入services.msc后,就可以看到MongoDB這個服務項了,后面你就可以通過
net start mongodb 啟動mongodb服務
net stop mongodb 停止mongodb服務
通過指令注冊mongodb服務
安裝好mongodb服務后使用命令啟動和停止mongodb
進入mongo命令模式,可以進行對數據庫的增刪改查等操作
注意:當出現以下情況
表示mongodb服務還沒有啟動,可以通過上面的命令啟動mongodb,就可以進入mongo模式。
1.2 在代碼中編寫有關Mongodb的模式Schema和模型Model
Shema是一個文檔的數據結構,可以定義各種類型如String、Number、Date等類型的字段,有個數據結構的定義,后面的數據就有了一一對應的存放的位置。
Model是對應於前面定義Schema的編譯版本,一個model的實例直接映射數據庫中的一個文檔,從而實現CRUD(Create、Read、Update、Delete)操作。
具體的定義參見代碼中models/movie.js和shemas/movies.js。
1.3 在入口文件app.js中改寫數據獲取方式
具體參見app.js,通過新加入的路由“/admin/movie/new”,實現向網站中添加數據,也就是將數據插入到mongodb的表中。之后我們可以在主頁以及list和detail頁面看到加入的這條記錄
注意:代碼中的update和delete模塊的代碼還有問題,目前尚未調通,但是不影響對於mongodb的數據庫的插入數據
錄入數據並提交
跳轉到詳情頁
通過可以看到主頁以及列表頁也多了這條記錄
通過mongo模式,我們可以看到這條記錄確實已經存入數據庫imooc中了
2.有關github
工作中發現github着實是個好東西,所以為了避免本地不斷的修改有沒有修改記錄的囧境,所以決定將這個小小應用的代碼上傳到github上。
那么問題來了——沒弄過。
沒關系,那就現在開始弄吧,鼠標點一點,資料看不完。 下面這篇《手把手教你最簡單的開源項目托管GitHub入門教程》講的很好了。
前人講的這么好,我就不啰嗦了,補充兩點自己遇到的問題。
2.1 在git commit的時候報錯:fatal: unable to auto-detect email address (got 'Administrator@20150409-153944.
解決方法:表明自己的身份:git config --global user.email {emailaddress}
2.2 git push的時候提示unknown ssl的錯誤
解決方法:被qiang了。
2.3 至此,可以看到我的兩個小應用已經傳到我的github主頁了
歡迎前去指教代碼^_^
如果您覺得閱讀本文對您有幫助,請點一下“推薦”按鈕,您的“推薦”將是我最大的寫作動力!如果您想持續關注我的文章,請掃描二維碼,關注JackieZheng的微信公眾號,我會將我的文章推送給您,並和您一起分享我日常閱讀過的優質文章。
友情贊助
如果你覺得博主的文章對你那么一點小幫助,恰巧你又有想打賞博主的小沖動,那么事不宜遲,趕緊掃一掃,小額地贊助下,攢個奶粉錢,也是讓博主有動力繼續努力,寫出更好的文章^^。
1. 支付寶 2. 微信