Rails First Blood

1==intro== 2Ruby on Rails。 3 4Rails是一套網站開發框架幫助你建立網站應用程式,它不是程式語言。 5 6執行效能是絕對比不上靜態語言的;沒有編譯期可以檢查型別錯誤 7 8單元測試;TDD(Test-driven development)測試驅動開發等敏捷最佳實務。 9http://rubyconf2008.confreaks.com/matzs-keynote.html 10http://confreaks.net/videos/159-rubyconf2009-keynote-address 11http://confreaks.net/videos/11-mwrc2010-ruby124c41 12 13 14==dev env== 15Ruby 1.9.3以上版本或JRuby 16sqlite -> MySQL/PostgreSQL 17Ruby on Rails 18(apache、nginx) 19 20ENCODEUTF-8,無BOM(byte-order mark)表頭 21 22===ENV ON Ubuntu 14.04=== 23sudo apt-get update 24sudo apt-get upgrade 25 26sudo apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g  libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev 27wget https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.2.tar.gz 28tar xf ruby-2.2.2.tar.gz 29cd ruby-2.2.2/ 30 ./configure 31 make 32 sudo make install 33ruby -v 34 35#gem source change 36gem sources -l 37gem sources --remove https://rubygems.org/ 38gem sources -a https://ruby.taobao.org/ 39 40sudo gem install rails --no-ri --no-rdoc 41 42#RubyGems是Ruby的套件管理系統 43gem -v 告訴你 RubyGems 的版本 44gem update --system 升級RubyGems的版本 45gem install gem_name 安裝某個套件 46 ;no RDoc和ri文件  47   gem install gem_name --no-ri --no-rdoc   48  add “gem: --no-ri --no-rdoc”  to “~/.gemrc” file 49gem list 列出安裝的套件 50gem update gem_name 更新最新版本 51gem update 更新所有你安裝的Gems 52gem install -v x.x.x gemname 安裝特定版本 53gem uninstall gem_name 反安裝 54 55===rails start=== 56CRUD指的是Create(新增)、Read(讀取)、Update(更新)、Delete(刪除)四種操作資料的基本方式。 57 58rails的指令可以初始一個Rails專案目錄。 59 60$ mkdir projects 61$ cd projects 62$ rails new demo --skip-test-unit   63 --skip-bundle   加上该参数,bundle install 再也不会从rubygems.org 下载文件了。 64$ cd demo 65$ bundle config mirror.https://rubygems.org https://ruby.taobao.org/ ;更改ruby bundle 66$ bundle install 67 68#每次有修改Gemfile這個檔案都需要重新執行bundle 69#dev除了修改config或vender目錄下的檔案需要重新啟動其它修改都不需要 70#production任何程式的修改都需要重启服务器 71$ cd projects/demo 72$ bin/rails server 73 74visti by http://LOCALHOST:3000 75 76 77 78 79==OTHERS== 80====檔案/目錄 用途==== 81Gemfile 設定Rails應用程式會使用哪些Gems套件 82README 專案說明:你可以用來告訴其他人你的應用程式是做什麼用的,如何使用等等。 83Rakefile 用來載入可以被命令列執行的一些Rake任務 84app/ 放Controllers、Models和Views檔案,接下來的內容主要都在這個目錄。 85config/ 應用程式設定檔、路由規則、資料庫設定等等 86config.ru 用來啟動應用程式的Rack伺服器設定檔 87db/ 資料庫的結構綱要 88doc/ 用來放你的文件 89lib/ 放一些自定的Module和類別檔案 90log/ 應用程式的Log記錄檔 91public/ 唯一可以在網路上看到的目錄,這是你的圖檔、JavaScript、CSS和其他靜態檔案擺放的地方 92bin/ 放rails這個指令和放其他的script指令 93test/ 單元測試、fixtures及整合測試等程式 94tmp/ 暫時性的檔案 95vendor/ 用來放第三方程式碼外掛的目錄 96 97如果啟動伺服器時出現Could not find a JavaScript runtime的錯誤,請編輯Gemfile這個檔案加上一行gem 'therubyracer',輸入bundle install安裝這個套件,然後再啟動一次rails server即可。這是因為在Ubuntu作業系統上預設沒有任何JavaScript直譯器可以給Rails使用。你可以裝Node.js或是安裝therubyracer這個Ruby套件來獲得JavaScript直譯器。 98 99在Controller中,一個公開函式(public method)就代表一個Action,一個Action對應一個HTTP的請求和回應。 100Ruby使用#进行单行注释。 101多行注释, 102=begin 103 ... 104=end 105 106 107====设置首页==== 108将首页设置为welcome#index 109---config/routes.rb 110  root :to => "welcome#index" 111 112==== 数据库==== 113Rails系统默认使用sqlite,一般不会用在生产中,但是使用在测试中是十分好用的。 114配置文件是config/database.yml,他有三种执行环境test,development,production。 115默认可以不做配置修改直接使用。 116 117$ bin/rake db:create  ;用来建立空的资料库 118 119===curd程式=== 120Rails的scaffold 能产生一组MVC,做展示和学习之用。 121$ bin/rails g scaffold person name:string bio:text birthday:date 122 123实际多用scaffold产生的MV,自己写出C来使用。 124database migration 资料库移动,Rails使用rake指令來執行Migrations。 125Migration的檔名中包含了Timestamp(時間戳章),用來確保它們可以依照建立時間依序執行。
点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Mac用户必备的Ruby开发工具,RubyMine 2023新版 永久激活码

RubyMine2023forMac是JetBrains公司开发的一款Ruby编程语言开发工具,支持多种Ruby开发环境,包括Rails、Sinatra等。该软件为Ruby开发人员提供了一站式的集成开发环境(IDE),可帮助他们更快地、更高效地开发代码。

Kindeditor and cKediter for Ruby on Rails

KindeditorforRubyonRails https://github.com/Macrow/rails\_kindeditor(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.com%2FMa

NUC972学习历程之NUWRITER使用说明以及烧录模式的说明

3.1簡介NuWriter工具能幫助使用者透過USBISP模式,將Image檔案放入儲存體中,例如:SPIFlash設備或NANDFlash設備.3.2驅動程式安裝NuWriter必須在電腦中安裝VCOM驅動程式才能使用NuWriter工具.請依據下列步驟來安裝VCOM驅動程式:1\.將電腦與NUC97

Rails Haml

Ruby on Rails 之旅(七)—— Ruby on Rails 入门(5)

接下来我们一起学习一下respond\_to字面意思是响应给。。。我们可以理解为,你要什么格式。以往一样的操作返回不同的格式,我们大多会这样处理:defshow_html@usersUser.find(:all)enddefshow_xml@usersUser.find(:all)