チーム内共有

エラーメッセージを装飾する

【共有】エラーメッセージの装飾に関してモデルにデータを保存する際、カラムに対してバリデーションを掛ける事があると思います。その時、表示させるエラーメッセージが編集出来る事が分かったので共有します。 ①エラーメッセージ エラーが発生すると、html…

CSSのみで動きのあるボタンを実装する

【共有】このサイト参考になりそうなので共有します!コードをコピペすればCSSだけで動きのあるボタンを簡単に実装出来ます! https://www.torat.jp/css-hover-design/

本番環境でのDBに関するエラー

【共有】本番環境でのDBに関するエラーfurimaアプリを本番環境にデプロイする際に参考になりそうだったので共有します。 ・エラー内容アプリを本番環境にデプロイしたところ以下のエラーが出た(Mysql〜となるのでDB関係のものと分かる)。 ・原因renameコマ…

CRUD処理以外のActiveRecordメソッド

【共有】フリマアプリの実装過程でCRUD処理以外の便利そうなActiveRecordメソッドが載ってるサイトを参照したので備忘録として共有します。 ・countメソッドhttps://qiita.com/operandoOS/items/f932ecac5a7e9cc9f098 ・exists?メソッド等https://qiita.com/…

テストコード時にFakerで年月日と名前(漢字、カタカナ)を生成する方法

【共有】テストコード実施時にFakerで値を作成する方法ニックネーム、email、パスワードの作成コードはカリキュラムに記載がありましたが、年月日と名前(漢字、カタカナ)については記載がありませんでした。 こちらのサイトが参考になると思いますので共有…

2038年問題

【共有】2038年問題について今朝の時間のメソッドを調べていた時にもう一つ興味深いものが出てきたので共有します。都市伝説かもしれませんが念の為! https://www.change-makers.jp/technology/11351

Timeメソッド、Dateメソッド まとめ

【共有】時間や曜日を出力するメソッドは今後も役に立ちそうなので先ほどのrubyドリルの時に作ったコードを備忘録として共有させて頂きます! require 'time'puts "1.今日は#{Time.now}です"require 'date'day = Date.todayweek = Date.today.wdayweeks = …

ER図の書き方

【共有】ER図の書き方このサイトが参考になりそうなので共有します。※カリキュラムにはここまで細かい説明はなかったので役に立つと思います! https://it-koala.com/entity-relationship-diagram-1897

gitコマンド

【共有】Linuxコマンドでcommitする時のコマンドの意味最近はcommitする時はターミナルから直接入力する方が楽に思えてきたので「git add .」→「git commit -m “commit名“」と打ち込んでいます。その意味について調べてみました。gitコマンドは他にも沢山あ…

commit名の修正方法

【共有】commit名の修正方法このサイトの内容が非常に分かりやすかったので共有します。使用例)commit名を「ルーティングの設定」とするところを間違えて「ルーテキングの設定」としてしまった場合の変更方法 https://www.granfairs.com/blog/staff/git-com…

破壊的メソッドについて

【共有】破壊的メソッドについて今日のRubyドリルで破壊的メソッドが出てきましたが、汎用性がありそうな予感がしたので調べてみたらビンゴでした。使い方としては他のメソッドに「!」を付けると破壊的メソッドを発動できます。例)upacaseメソッドの場合 u…

ドット(.)での範囲指定の違いについて

【共有】ドット(.)での範囲指定の違いについて以前の共有でdeviseを利用している時のパスワードの文字数制限について触れました。→config/initializers/devise.rbに「config.password_length = 6..128」と記載があり、これが「passwordは6〜128文字まで」…

単語の命名規則について

【共有】単語の命名規則についてキャメルとスネークは習いましたが、ケバブケースというのもあるようですね。 ・キャメルケース:各単語の先頭を大文字にする。例)CamelCase(キャメル=ラクダの意からコブのイメージ)・スネークケース:単語間をアンダー…

cdコマンドの打ち込み省略について

【共有】ターミナルのcdコマンドで配下のディレクトリに移動する時の小ワザ 例)カレントディレクトリ→projects、 移動したいディレクトリ→projects/training_curriculumの場合 ・従来のやり方:「cd training_curriculum」と全て打ち込む・自分が行っている…

HTTP通信とHTTPS通信について

【共有】HTTP通信とHTTPS通信の違いについて発展カリキュラムのデプロイのカリキュラムの一番最後に以下の記載があります。 Basic認証の問題点を理解しようBasic認証は、少ない手間で認証を実装できるため便利ですが、安全性という観点から、完全に信頼でき…

シークレットウインドの意義

【共有】Q、Basic認証の確認でシークレットウインドの使用が記載されているのはなぜ?(別件でメンターとお話した時に気になったのでご教示頂いた内容です。) A、テスト環境(ローカル環境)で認証確認後に本番環境(herokuのアドレス)で確認を行おうとし…

ターミナルコマンドの視認性向上ついて

【共有】 ターミナルの過去のコマンドを見やすくするコツもうターミナルを扱い始めて一ヶ月以上経つので周知のことかもしれませんが、コマンド終了毎にエンターキーを4〜5回押しておくと見やすくなります!(コマンドが複数のカレントディレクトリのパスに挟…

JSのforEach文について

【共有】JSのforEach文についてJSのカリキュラムの序盤にforEach文が出てきますが(pullDownChildの箇所)、「配列に対して繰り返し処理をする」としか記載がありませんでしたので少し調べてみました。 コールバック変数というのが出てきますが、イメージはr…

bundle installとbundle updateの違いについて

【共有】Q、「bundle install」と「bundle update」の違いは?ajax_app(LESSON4-3)で「gem pry-railsを導入し、postsコントローラーのcheckedアクションにbinding.pryを記述して、メモをクリックした時に処理が止まるかを確認しましょう。」とさらっとgem…

JSで作れるゲームについて

JavaScriptの拡張性についてまだJavaScriptは習いたてですが、極めると以下のようなゲームを作ったりも出来るようです♪https://techacademy.jp/magazine/30043https://www.youtube.com/watch?v=B1iabPM69vM&t=53s

include?メソッドについて

本日のrubyドリルについて先ほど自分で作成したコードが上手くいかない事象(名前の登録はできるが、登録名に空白や記号を含んでいてもエラーにならない)が起きました。チーム内で質問させて頂いたところスパッと解決致しましたので、参考になればと思い内…

XSSとCSRFについて

【共有】発展カリキュラムに入ると、Rubyの深堀りの始めの辺りに「セッションとクッキー」という言葉が出てきます。この言葉を聞いて以前共有した内容を思い出しましたので再度展開致します。 Q、XSS(クロスサイトスクリプティング)とは何か? A,一言でい…

html.erbと検証ツールのコードが不一致の件

【共有】html.erbファイルのコードとそのコードのレスポンスビューのコードが一致しない件ChatAppのユーザーログイン機能の結合テストコードで「fill_in ‘user_email’, with: @user.email」というコードが出てきたので、html.erbファイルの中から「@user.ema…

nilとnullの違いについて

【共有】nilとnullの違いについてテストコードのところで頻出しているnil「何も存在しない」ですが、似た英単語にnullというのがあります。気になったので調べてみました。これに関する記事は複数あり、書いてある事があまり統一されていないので信憑性には…

homebrewについて

【共有】homebrewについてChatAppの後半で画像投稿機能を実装する際にImageMagickをHomebrewからインストールするとあります。Homebrewというワードが気になったので調べてみました。簡単にいうと「MacOSでソフトウェアを導入する際に使用するシステム」のよ…

deviseのpassword_comfirmationについて

もう一度考え直してみましたが今回のテストコードは、「空の値を送信する」という動作を登録ボタンをクリックするのではなく、空の値を保存する事で代用しようとしていると思われます。 ・空の値を保存する場合、Userモデル(devise経由有り)とMessageモデ…

一意性制約について

【共有】先ほどご質問を頂き、朝礼でお話した内容です。Q、emailの重複登録防止はどこで定義されているのか?(パスワードの文字数制限はdevise.rbに記載がありましたが、emailの重複登録防止の記述が見つかりません、、、) A、重複登録を禁止する制約は一…

link_toをボタンにする

【共有】 link_toをボタンにする方法ChatAppのユーザー情報編集画面(app/views/users/edit.html.erb)には、以下のコードから生成される「ログアウト」と「チャットページへ戻る」ボタンがあります。 <%= link_to "ログアウト", "#", class: 'btn'%><%= lin…

renderメソッドについて

【共有】renderメソッドについてPictweetでpartialオプションを使用する事で部分テンプレートを、Chatappでactionオプションを使用する事で対応するビューを呼び出すのに使用しましたが、調べたら、まだまだ汎用性のあるオプションが色々出てきたので共有し…

Gemfileの使用環境指定方法について

【共有】GemfileへGemを追加する際の環境指定方法についてChatAppにdeviseを追記する際に気になったので調べてみました。使用環境別のGem追記場所 ①開発環境に追加する場合 group :development do gem 'rspec'end ②テスト環境に追加する場合 group :test do …