MENU

2020-11-01から1ヶ月間の記事一覧

Rails エラーメッセージを入力項目毎に実装

こんな感じに 前提情報 Productモデルにname, email, ageカラムを作成 presece: trueのバリデーションを設定 修正内容 1.エラーを表示するパーシャルを作成 2.パーシャルに引数を渡す。(attributeは :nameなどの項目の情報が入っています。modelには produc…

Rails Slack通知 webhook

仕組み webhookとは? qiita.com この記事を参考にすると、外部のサービスを、指定のエンドポイント(url)を叩くと利用できると言う事らしい(さらっと読んでるので、違うかも) 通常外部のサービスをAPI利用する場合、tokenやkeyを取得してできるけど、 ur…

React イベントに関数を渡す時

イベントに監視を渡すとき 式展開で渡すと.setStateするときに、thisがundefinedになりエラーになる handleLogin() { this.setState({loggedIn: !this.state.loggedIn}) } <Botton onClick={this.handleLogin}}>ログイン</Botton> 対処方法 対処方1 thisをbindする <Botton onClick={this.handleLogin.bind(this)}>ログイン</Botton> 対処方法2 即時関数で実行する <Botton onClick={() =></botton>…

AWS ルートテーブル

なぜルートテーブルを理解したい? awsのデフォルトVPS?を消してしまって、 ec2を構築する時に、自分でVPC、サブネットをを構築しなくてはいけなくなり、毎回ルートテーブルの設定を忘れるので少し調べてみる ルートテーブルは何か? サブネット内の通信がど…

.ruby-versionと Gemfileのrubyバージョン

rubyのバージョンを変更したい場合 .ruby-versionのrubyのバージョン指定と Gemfileのrubyのバージョンを同じにしないと変更できない 事象 本番環境でrubyのバージョンをruby 2.6.3 ローカル2.4.0で運用していたので、本番環境でbundle ができなかった。 Gem…

Rails flash機能

シンプルなFlash機能 controoller def create @book = Book.new(book_params) if @book.save flash[:success] = "保存できました" redirect_to パス else flash[:failled] = "保存に失敗しました" redirect_to パス end end view <% flash.each do |key, val…

Js(TYpescript) 早期リターン

早期リターン 早期リターンをすると可読性が上がる function handleConsole(a:string, b:string) { if (a != 'a' || b != (b) ) { return } if (a == "a") { console.log("a") } else if (b = "b") { console.log("b") } } function hello(a: string, b:stri…

Javascript(Typescript) クラス基本

基本 private name: string;は this.nameの型 name: stringは初期化時の引数の型 class Greeter { // プロパティの定義(デフォルトで public) private name: string; // ここで肩を定義 // コンストラクタの定義 constructor(name: string) { this.name = …

サイドバーのフェードインをjavascriptで実装

サイドバーのフェードインをjavascriptで実装 最近jsがかなり使いやすくなっている気がする ソースコード ロジックとしては、下記。 1.positionで最初は見えなくする 2.fadeInのクラスを作成 positionのtransitionを設置 3.クリックイベントでfadeInクラスを…

Video タグの使い方

Video タグの使い方 タグの設置はこんな感じ <video src="sampe.mp4" width="300" height="300" controls id="my-video"></video> controls これは再生ボタン、再生時間などを表示してくれるバーの事 play() pause()メソッド 下記のように、videoの要素を取得して、play() pause()が行える <div class="container"> <section> <h2>audioタグ</h2> </section></div>

GitHub にHtmlを公開する

GitHub にHtmlを公開する html cssぐらいであれば、githubで公開できる 手順 1.html cssを作成する 2.githubレポジトリを作成する 3.pushする 4.github settingsでホスティングの設定をする 5. https://.github.io/<リポジトリ名> 1.html cssを作成する ディ…

Rails N + 1 INNERJOIN

N + 1とは? 関連するレコードを無駄に見に行ってしまう事 具体例 前提 UserとAirticleで1対多の関係 controller AirticleController def index @airtcles = Airticle.all end view <% @airtcles.each do |airtcle| %> <%= airtcle.user.email%> <% end %> …

React 環境識別方法

React 環境変数で環境を識別する process.env.NODE_ENV => developmen

Rails 500エラー 例外処理

500エラーの画面 恥ずかしながら本番での500エラーは 、Rails の500html.htmlだったのか、 開発環境だと、赤い画面でエラーメッセージが出て、本番の場合にこの画面がでるからnginxの画面なのかとずっと思ってた。。。。 public/500html.htmlのファイルだっ…

Rails flashをヘルパーで

flashを汎用的に書いてみる module ApplicationHelper def flash_messages flash.each do | flash_type, message| concat(content_tag(:div, message, class:"alert-message #{flash_type}")) end end end application.html %body = render 'layouts/header'…

Rails 保存

rails データ保存 def create @post = Post.new(post_params) if @post.save flash[:success] = "保存に成功" redirect_to posts_path else flash[:error] = "保存に失敗" redirect_to new_post_path end end 例外などについては、こちらの動画で解説されて…