install homebrew
$ xcode-select --install
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
install rvm
$ brew install autoconf automake libtool libyaml readline libksba openssl
$ \curl -sSL https://get.rvm.io | bash -s stable
利用 rvm 裝 ruby
$ rvm install ruby-head
$ rvm use ruby-head
裝 bundler 和 rake
$ gem install bundler
$ gem install rake
$ gem install rails --no-ri --no-rdoc
可以去 TryRuby 或 codecademy
參考資料
$ rails new blog
$ cd blog
$ bundle install
$ rails server
$ rails generate scaffold Article title:string content:text picture:string
# title 文章標題 string 字串
# content 文章內容 text 一大段的文字
# picture 文章圖片 string 之後會用其它套件讓它支援圖片
$ rake db:migrate # 在 database 裡創表格
$ rails server # 把網站跑起來
在 Gemfile
裡面加入
gem 'carrierwave'
在終端裡,執行:
$ bundle install
$ rails generate uploader Picture
打開 app/models/article.rb
並在這行下面
class Article < ActiveRecord::Base
加入
mount_uploader :picture, PictureUploader
打開 app/views/articles/_form.html.erb
並將這行
<%= f.text_field :picture %>
改成
<%= f.file_field :picture %>
可以再次開啟 rails server
看看
打開 app/views/articles/show.html.erb
並將這兩行
<strong>Picture:</strong>
<%= @idea.picture %>
改成
<%= image_tag(@article.picture_url, width: 600) if @article.picture.present? %>