1. ホテルのレビューサイトを作る
- Advanced 1.設計とは?新しくプロジェクトを作成し、お問い合わせページを作ってみる
- Advanced 2.Gemを使って管理画面を作成する、設計説明
- Advanced 3.演習、各ページを自分で作ってみよう
- Advanced 4.検索を追加してみる、引き続き各ページを作ろう
- Advanced 5.bootstrapについて、デザインを追加してみる
- Advanced 6. まとめ
1.1. どんなサイト?全体説明
レビューを作る
予約を作る
1.2. 設計とは
RESTful APIに沿ってURLを設計する
MVCに沿ってモデルやデータベースを設計する
2. 今回やること
railsのプロジェクトの立ち上げ方(復習)
お問い合わせのページが必ずあるのでお問い合わせのページを作成する
2.1. お問い合わせページを作ってみよう
ここにshowページの画像入れる
2.1.1 プロジェクトを作る
hotel-projectの名前でプロジェクトを作成して、アプリを起動して、Railsの初期画面が表示されるのを確認してみよう。
cd ~
cd projects
rails new hotel-project -B
Windowsの場合Gemfile修正ポイント
gem 'sqlite3','~> 1.3.13'
gem 'bootsnap', '~> 1.1.0'
bundle install
rails db:migrate
rails server
contactページ
2.1.2 モデルを作る
Contact
???
-
カラム名には、大文字やハイフンは使わないように注意しよう。
- E-mail → ×
- email → ○
どこから手をつければいいかわからない場合は下記を参考にしながら始めてみよう
2.1.3. routingを作成する
お問い合わせ新規作成
お問い合わせ作成
お問い合わせ終了・確認画面
config/routes.rb
???
2.1.4. Controllerを作る
???
2.1.5. View作る
sublimeから右クリック
new.html.erb
???
show.html.erb
???
答え集
Contactモデルの作成
rails generate model Contact name:string email:string body:text
お問い合わせのRouting作成
GET /contacts/new
POST /contacts
GET /contacts/:id
お問い合わせのController作成
rails generate controller contacts
app/controllers/contacts_controller.rb
def new
end
def create
end
def show
end
migrateでエラーが発生する場合の対処法
- まずrails db:migrateの結果を確認
- ちゃんと走る場合はエラーが解消できる
- ちゃんと走らない場合は
- rails db:rollbackしてrails d modelしてrails g modelからやり直す
- それでも上手く行かない場合は
- rails d modelまたはmigrateファイルとmodelのファイルを直接sublimeから削除し、rails db:migrate:reset