Ruby-China網(wǎng)站源代碼包的本地安裝
1、Ruby-China網(wǎng)站源代碼包: https://github.com/huacnlee/ruby-china
?$ cd ~/workspace $ git clone https://github.com/huacnlee/ruby-china.git
2、如果想要省心一點(diǎn),請(qǐng)千萬(wàn)不要嘗試在WINDOWS下安裝。昨晚上花了30分鐘嘗試WINDOWS下安裝,還安裝了git的WINDOWS客戶端,各種報(bào)錯(cuò),解決了幾個(gè),后來(lái)太晚了,睡覺作罷。
3、今天使用UBUNTU LINUX 11.10來(lái)安裝。上午花了半小時(shí)。晚上,邊安裝,邊學(xué)習(xí)又花了近2小時(shí)。已在本地完成全部部署,測(cè)試暫未發(fā)現(xiàn)問題。(安裝LOG在這里:http://ruby-china.org/topics/1398 )
===================================================
接下來(lái)才是正文,是整個(gè)安裝過程的整理。
1、在/home/yourname/下建個(gè)目錄放ruby-china的源代碼。編輯GemFile: 加入execjs 和 TheRubyRacer
?$ cd ~/project $ git clone https://github.com/huacnlee/ruby-china.git
?$ vi ~/project/ruby-china/GemFile
加入
gem 'execjs'
gem 'therubyracer'
2、安裝MongoDB: (MongoDB是一種文件導(dǎo)向數(shù)據(jù)庫(kù):http://zh.wikipedia.org/zh/MongoDB)
sudo apt-get install mongodb
安裝完即可,不用過多配置。不過需要手工建立 /data/db 目錄: sudo mkdir -p /data/db && sudo chmod 755 -R /data/db
測(cè)試 (啟動(dòng) sudo mongod,每次開機(jī)系統(tǒng)會(huì)自動(dòng)啟動(dòng))- ?$ mongo > db.foo.save( { a : 1 } ) > db.foo.find()
復(fù)制代碼
3、安裝redis: (Redis是一個(gè)開源的使用ANSI C語(yǔ)言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù) http://zh.wikipedia.org/wiki/Redis )
sudo apt-get install redis-server
同樣不用過多配置。測(cè)試(- ?niuniuqiu@niuniuqiu:~/projects/ruby-china$ redis-cli redis 127.0.0.1:6379> set foo bar OKredis 127.0.0.1:6379> get foo "bar"
復(fù)制代碼 Redis命令參考簡(jiǎn)體中文版 ( http://redis.readthedocs.org/en/latest/index.html )
4、按照官方文檔做:
- cp config/config.yml.default config/config.yml
- cp config/mongoid.yml.default config/mongoid.yml
- cp config/redis.yml.default config/redis.yml
- bundle install
- bundle update rails
- rake assets:precompile
- thin start -O -C config/thin.yml
復(fù)制代碼 可能需要: chmod +x ./script/resque
./script/resque start
bundle exec rake sunspot:solr:start
5、安裝 python-setuptools
sudo apt-get install python-setuptools
6、繼續(xù)按照官方文檔做:
sudo easy_install pygments # 或者 sudo pip install pygments
7、安裝數(shù)據(jù)庫(kù)
rake db:migrate
8、我下載的Ruby-China網(wǎng)站源代碼包中對(duì)db/seeds.rb 相關(guān)的 插入代碼的語(yǔ)句,已被注釋了?
導(dǎo)致 發(fā)帖子的時(shí)候選擇主題類型沒用東西可以選,發(fā)不了貼。提交:Node 不能為空字符
去掉注釋后運(yùn)行 rake db:seed 即可將這些數(shù)據(jù)插入。
BTW:現(xiàn)在突然想到其實(shí)這部分?jǐn)?shù)據(jù)之所以被注釋是因?yàn)椋瑧?yīng)該由管理員從后臺(tái)來(lái)維護(hù)這部分?jǐn)?shù)據(jù)。可是現(xiàn)在不能創(chuàng)建用戶,也建立不了管理員用戶?好像變成了一個(gè)悖論?
9、這時(shí)候可以啟動(dòng)WEB服務(wù)器了
rails server (縮寫rails s)
10、一個(gè)BUG?
發(fā)現(xiàn)用戶無(wú)法退出,出現(xiàn)http://ruby-china.org/topics/1364 所說(shuō)的情況(用戶登錄后,我想注銷,鼠標(biāo)點(diǎn)到用戶名上,下拉菜單出不來(lái))時(shí),,按照 回帖中指明的方法處理后,恢復(fù)正常。
【quakewang : 看上去是precompile的asset導(dǎo)致的,你清空 public/assets 然后清理一下瀏覽器緩存就能夠恢復(fù)正常。開發(fā)環(huán)境下請(qǐng)求獲得的application.js內(nèi)容不應(yīng)該包含其他js!
11、管理員后臺(tái)登陸。
先在前臺(tái)用戶注冊(cè)中注冊(cè)一個(gè)普通用戶,記住郵件地址。然后修改config/config.yml 中的 admin_emails: "likeyu@gmail.com likeyulikeme@gmail.com" (源代碼中寫成了兩行,貌似需要移動(dòng)到同一行中,多個(gè)用戶可以用空格分隔),
普通用戶即變成了管理員用戶。進(jìn)入后臺(tái)管理界面 http://localhost:3000/cpanel 。
管理員檢測(cè)的相關(guān)代碼:- projects/ruby-china/app/controllers/cpanel/application_controller.rb (RoR就是這么簡(jiǎn)練)
- ?before_filter :require_admin def require_admin if not Setting.admin_emails.include?(current_user.email) render_404 endend
復(fù)制代碼 12、差不多就這么多了,Deploy部分是互聯(lián)網(wǎng)環(huán)境部署時(shí)才會(huì)用到的。 不要在學(xué)習(xí)環(huán)境中執(zhí)行。config/config.yml 還有其他的一些配置選項(xiàng),,一看就懂的。
最后感謝 ruby-china.org 社區(qū)各位大大。新手上路,請(qǐng)多指導(dǎo)。
|