2015年3月份我用Rails寫(xiě)了第一個(gè)比較完整的項(xiàng)目——首個(gè)博客系統(tǒng)京髓,現(xiàn)在回過(guò)頭來(lái)看弯汰,覺(jué)得很多地方都寫(xiě)的比較爛综慎,今年年初的時(shí)候我打算重構(gòu)自己的博客系統(tǒng)莱找,從一開(kāi)始的想法到完成整件事酬姆,經(jīng)歷了長(zhǎng)達(dá)一年的時(shí)間,原因只有一個(gè)——懶奥溺。
這個(gè)博客的誕生是因?yàn)槠綍r(shí)在瀏覽其他網(wǎng)站及關(guān)注一些 js 庫(kù)時(shí)發(fā)現(xiàn)一些特別喜歡的東西辞色,所以才給了我做這件事的動(dòng)力。其實(shí)做完這個(gè)項(xiàng)目真正花費(fèi)的時(shí)間并不多浮定,比較難的是要讓自己愿意來(lái)做這件事相满。
整個(gè)項(xiàng)目做下來(lái),對(duì)我來(lái)說(shuō)桦卒,最難的不是技術(shù)實(shí)現(xiàn)立美,而是為博客每個(gè)主題找到合適的背景圖片,簡(jiǎn)直就是大海撈針方灾。別人給我推薦了這個(gè)圖片庫(kù)建蹄,經(jīng)過(guò)長(zhǎng)時(shí)間的尋找,終于找到了幾張讓我比較滿意的的圖片裕偿。這個(gè)工具不錯(cuò)洞慎,有需要的可以收藏一下。
新的博客系統(tǒng)主要功能有:
后端:數(shù)據(jù)統(tǒng)計(jì)嘿棘,后臺(tái)文章管理拢蛋,相冊(cè)管理,個(gè)人簡(jiǎn)歷管理
前端:文章列表蔫巩,相冊(cè)展示谆棱,時(shí)間線等
Demo
項(xiàng)目 Demo 請(qǐng)?jiān)L問(wèn):http://liuzhen.me/
項(xiàng)目 github 代碼:https://github.com/liuzhenangel/RBlog
核心技術(shù)框架
Ruby on Rails 5.1.4
bootstrap 4
font-awesome
figaro
postgres
slim
high_voltage
carriewave & upyun
sidekiq
kaminari
mina
puma
lograge
simditor
turn.js
開(kāi)發(fā)環(huán)境準(zhǔn)備
第一步, 安裝項(xiàng)目依賴
$ bundle install
第二步, 啟動(dòng)服務(wù)
$ rails s
第三步, 瀏覽器訪問(wèn):http://localhost:3000
結(jié)束.
如何發(fā)布?
第一步, 配置nginx
先根據(jù)項(xiàng)目里的 config/deploy/production.rb, /config/deploy.rb, config/puma.rb, /config/nigix.conf 文件, 修改其中的配置, 然后將 /config/nigix.conf 文件復(fù)制到你的服務(wù)器上 nginx 所在目錄的 /etc/nginx/conf.d 目錄下, 命名為 xxx.conf 的文件. 然后重啟 nginx.
第二步, 在服務(wù)器上初始化
$ mina setup
第三步, 發(fā)布
$ mina deploy
學(xué)習(xí)參考資料
Rails文檔:http://edgeguides.rubyonrails.org/api_app.html
使用模板創(chuàng)建Rails項(xiàng)目:https://github.com/80percent/rails-template
ubuntu16.04安裝railshttps://gorails.com/setup/ubuntu/16.04
simditor編輯器:http://simditor.tower.im/
startbootstrap-clean-blog前端樣式:https://startbootstrap.com/template-overviews/clean-blog/
sb-admin前端樣式:https://startbootstrap.com/template-overviews/sb-admin/
turnjs前端樣式:http://www.turnjs.com
timeline前端樣式:https://github.com/RyanFitzgerald/vertical-timeline
圖片庫(kù):https://unsplash.com
引薦 Vue.js 項(xiàng)目
項(xiàng)目 Demo 請(qǐng)?jiān)L問(wèn):http://v2ex.liuzhen.me/
項(xiàng)目代碼:https://github.com/liuzhenangel/v2ex_frontend
引薦 React.js 項(xiàng)目
項(xiàng)目 Demo 請(qǐng)?jiān)L問(wèn):http://ruby-china.liuzhen.me/
項(xiàng)目代碼:https://github.com/liuzhenangel/react-ruby-china
Built with
接下來(lái)的目標(biāo)
工作以來(lái)很少靜下心來(lái)寫(xiě)點(diǎn)東西,時(shí)間長(zhǎng)了圆仔,導(dǎo)致語(yǔ)言組織能力也在退化垃瞧,這是個(gè)很恐怖的事情,所以我給自己接下來(lái)定的目標(biāo)是學(xué)習(xí)如何將自己的知道的東西有條理的講清楚坪郭,并能讓別人理解清楚个从,這是一項(xiàng)非常有挑戰(zhàn)的任務(wù),我希望自己在2018年未的時(shí)候,在語(yǔ)言表達(dá)方面能有所精進(jìn)嗦锐。