2021-05-13から1日間の記事一覧
Herokuにデプロイする手順 heroku create アプリケーション名 % git config --list | grep heroku fatal: not in a git directory以外が表示であればおk % heroku addons:add cleardb % heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL` % heroku c…
画像を投稿する active storageを導入する手順 % brew install imagemagick Gemfile gem 'mini_magick' gem 'image_processing', '~> 1.2' % bundle install % rails s % rails active_storage:install % rails db:migrate
サポートモジュール テストコード内にて同じ記述を避けるために1つにまとめる。 supportファイルを作成し、その中にこのようなファイルを作る。 spec/support/sign_in_support.rb 1 2 3 4 5 6 7 8 9 module SignInSupport def sign_in(user) visit new_user_…
まずrspecを導入する。 Gemfile gem 'rspec-rails', '~> 4.0.0' % bundle install % rails g rspec:install rspec導入完了。 結合テストコードのsystem specはcapybaraで既にgemに入っている。 .rspec --format documentation これを追加することでテストコ…
検索機能 ビュー <%= form_with(url: search_tweets_path, local: true, method: :get, class: "search-form") do |form| %> <%= form.text_field :keyword, placeholder: "投稿を検索する", class: "search-input" %> <%= form.submit "検索", class: "sear…
部分テンプレート 複数のページにて、同じコードを書く場合、部分テンプレートを用いることによってコードを1つのページで済ます。 部分テンプレートのファイル (例)_tweet.html.erbに記述する。 _を最初に持って来る。 使い方 部分テンプレートに書いた内…
orderメソッド 順番に並べる。並び方を決めるメソッド インスタンス = モデル名.order("並び替えの基準となるカラム名 並び順") 並び順について ASC(昇順): 古いものから新しい順番。古いものが上で新しいものが下になる。 *ABCじゃないので注意 DESC(降順)…
N+1問題とは アソシエーションでtweetとuserが結びついているとする。 tweetの情報をとって来る場合、userの情報も探して来る必要がある。そのためtweetの情報を持って来るとは別でuserはuserでtweetに紐付いているuser情報を持って来る必要があり、データベ…
deviseのinstall #Gemfileに記述 gem 'devise' ターミナル % bundle install % rails s % rails g devise:install ここまででdeviseは使用可能になる #Userモデルを作成rails g devise user#テーブル作成マイグレーションファイルにカラムを記述し、rails…
アプリケーションを作る cd ~/projects #projectで無くても可。作成するアプリの1つ上のディレクトリ rails _6.0.0_ new アプリケーション名 -d mysql #この時点でアプリは作成完了 cd アプリケーション名 bundle install #database.yml変更# encoding: utf…