Week5 Day3 Assigement-Forum 作業筆記。

參考資料:rails 起步走heroku佈署

rails new Forum --skip-test-unit

準備第一次push
git init 
git add . 
git cm -m “first push”

git remote add origin git@github.com:Dylan0203/Forum.git
git push -u origin master

rails s ←跑本地server 
http://localhost:3000/ ←本地瀏覽器

Gemfile:

增加 ←因為要上到Heroku所以要用PostgreSQL的database adapter
gem ‘pg’, group: :production
gem ‘rails_12factor’, group: :production

移動
gem ‘sqlite3’ 至下方開發環境和TEST才使用

bundle ← 安裝Gem

config/database.yml 的 production 改用 postgresql adapter:

production:
adapter: postgresql
encoding: unicode

heroku create
git push heroic master

ps: heroku run rake db:migrate ← 如果有更改表單在push完都要重整table
 heroku restart ← 重開server

bin/rake db:create ←建立資料庫

參考資料:手工打造 CRUD 應用程式

rails g model article topic:string content:text is_public:boolean user_id:integer <-- for the user table as the foreign key

rake db:migrate

到models改article.rb

validates_presence_of :topic

rails g controller articles

RESTful路由: 至routes.rb 加上 resources :articles

add index.html.erb at view/atricles

app/controllers/articles_controller.rb

建立new、show、edit、_form .html.erb at view

發現寫不完,先掠過

參考資料:使用者認證

Gemfile:
gem ‘devise’
輸入bundle install安裝此套件
輸入rails g devise:install產生devise設定檔

編輯 config/environments/development.rb 和 production.rb 加入寄信時預設的網站網址:
config.action_mailer.default_url_options = { host: ‘localhost’, port: 3000 }

到app/views/layouts/application.html.erb加上:
 <p class=”notice”><%= notice %></p>
<p class=”alert”><%= alert %></p>

rails g devise:views
rails g devise user
rake db:mygrate