ryota21silvaの技術ブログ

Funna(ふんな)の技術ブログ

これまで学んだ技術の備忘録。未来の自分が救われることを信じて

2020-01-01から1年間の記事一覧

【現代語訳】スタートアップの情報収集のすヽめ

スタートアップの情報どこにあるねん スタートアップってリリースされている記事とかが少ないので、面白い企業を探したくても見つからないことがよくあるんですよね。 そこで「どんなメディアを使ってスタートアップを探せばいいの?」という方向けに、私が…

【備忘録】チェリー本第3章:テストを自動化する

3.1 イントロダクション 3.1.2 プログラマの3大美徳 以下の3つを持つプログラマは良いプログラマと言われる。 1. 怠慢(Laziness) 全体の労力を減らすために手間を惜しまない気質。 何度も同じことをやりたくない面倒くさがりのプログラマは、自動化やDRY原則…

【備忘録】チェリー本第2章:Rubyの基礎

2.6 メソッドの定義(P.36) メソッドの戻り値 Rubyは最後に評価された式がメソッドの戻り値になるため、returnのようなキーワードは不要。 以下のように、returnはメソッドを途中で脱出したい場合に使用することが多い。 irb(main):012:1* def greeting(count…

【環境構築】MySQLのパスワードが分からず、最終的にディレクトリごと削除して解決した話(オススメしない)。

(※2020/05のメモを記録) はじめに 環境構築の際、MySQLのパスワードが分からず詰まったので、以下に解決まで至った流れを記していきます。 これはあくまで私の環境上の話なので、どこまで参考になるか分かりませんし、皆様のお時間を無駄にしたくはないので…

mergeメソッドのメモ

以下は、あるテーブルのデータと、そのテーブルの関連テーブルの外部キーを代入している。 しかし、処理が2行に分かれていて冗長。 @meal_record = current_user.meal_records.build(meal_record_params) @meal_record.food_id = params[:food_id] mergeメソ…

範囲オブジェクトrange。 ..でリテラル表現

範囲オブジェクトとは 範囲オブジェクトのクラス。範囲オブジェクトは文字どおり何らかの意味での範囲を表します。数の範囲はもちろん、日付の範囲や、「"a" から "z" まで」といった文字列の範囲を表すこともできます。 docs.ruby-lang.org 範囲の開始値と…

mapメソッドでループする(ついでにreject(&:blank?)とflattenを使ってる)

わざわざ空配列を用意するのダサいし、冗長。 @food_lists = [] food_labels.each do |food_label| @food_lists = Food.search_by_label(food_label) end mapメソッドを使う。 reject(&:blank?)で配列からnilと空文字を除く。 flattenで多次元配列を一次元配…

マイグレーションファイルについて

マイグレーションファイルとは データベースの設計図。 マイグレーションファイルを実行すれば、マイグレーションファイルを元にDBが作成される。 →マイグレーションファイルを作成しただけではDBに反映されない。 マイグレーションファイルを作成 rails g m…

Rakeタスクのメモ的な(メールの自動配信機能)

Rakeタスク タスクファイル作成 rails g task mail_summary タスクファイルの編集 (lib/tasks/mail_summary.rake) namespace :mail_summary do desc '公開済の記事の件数と、昨日公開された記事の件数とタイトルをメールで送信' # task :article doだとDBに…

【Ruby】procとblock

procとblockについて block ブロックとは do...endや{ }のカタマリのこと。 do...endと{ } 改行を含む長いブロックを書く場合はdo...end 1行でコンパクトに書きたい場合は{ } プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで …

【Rspec】build,create / sequence, trait, transientなど

build, createなどの違い DBへ保存するか否かなど違いがある。 メソッド 戻り値 DB保存 DB保存(アソシエーション) ID build() モデルインスタンス x o nil build_stubbed() モデルインスタンス x x 適当な値 create() モデルインスタンス o o DB保存された値…

【個人開発】ポートフォリオ作成にオススメなtipsやツールをまとめる

自分がポートフォリオ作成に活用したtipsやツールを以下にまとめてみました。 qiita.com ↪︎「こんな課題があるのか〜」と知ることも大事だと思います。 creators.eightbit.jp ↪︎ツクログで色々な個人開発を見て、アイデアや発想力を養うのもアリだと思います…

【Rails】404、500エラーをハンドリング(slack通知も)

エラーハンドリングのメモが残ってたから、体系的な内容に纏めてみた。 どうせなのでコッチに移しておく。 エラーハンドリングをする 404エラー時は、404エラー用のテンプレートを表示させる。 500エラー時は例外(エラー)クラス、エラーメッセージ 、バック…

【初学者向け】Gitのコマンドの使い方をよく忘れるから、纏めてみた

Git

はじめに Git: もう怖くないGit!チーム開発で必要なGitを完全マスター 山浦 清透を受講した時のメモがあったので、今の知識をもとに整理してみました。 これから新しいコマンドの使い方を覚えた時には、この記事に纏めていこうと思います。 はじめに 1. 基…

【Ruby】Date型で色んなメソッドを試してみる

今日、昨日、○日前、○日後とか # 今日 [1] pry(main)> Date.today => Sat, 22 Aug 2020 [6] pry(main)> Date.current => Sat, 22 Aug 2020 # 昨日 [7] pry(main)> Date.current.yesterday => Fri, 21 Aug 2020 # 昨日(1日前) [8] pry(main)> Date.current.ag…

Rails6にSemanticUIを導入

Rails6でのSemantic UIの導入 BootstrapのフレームワークであるSemantic UIをRails6で使ってみたので、以下に導入方法を記しておきます。 Semantic UI公式 以下の記事もよければ参考にしてください。 【Rails】Semantic UIを使って動的にフラッシュメッセー…

Rails6にjQueryを導入

Rails6でjQueryを導入する方法 yarn add jquery package.jsonとyarn.lockを確認すると、jQueryが追加されていることが分かる。 (package.json) { "name": "zero_calorie", "private": true, "dependencies": { "@rails/actioncable": "^6.0.0", "@rails/acti…

【Rails】マイグレーションファイルをmigrateする前に戻す方法(その他マイグレーション関連のコマンド)

be rails db:migrate:statusでmigrateの状況を確認。 upになっているファイルがmigrateされている。 $ be rails db:migrate:status database: zero_calorie_development Status Migration ID Migration Name ----------------------------------------------…

情報収集のやり方と好きなメディアサービスやブログを纏めておく

はじめに Feedlyを使って効率的に情報収集しよう 私は10個くらいのメディアを使って情報収集しているのですが、全メディアのサイトを訪問しているようでは、時間がいくらあっても足りません。 そこで色んなサイトの記事を1つのプラットフォームで一元管理し…

【Rails】RailsでAPIを叩く基本編

APIの特徴などを軽く抜粋(dysonさんメモ) jsonのserializerとは? 今回実装してみる要件 関連モデルのデータを返す リクエストスペックの書き方も APIの特徴などを軽く抜粋(dysonさんメモ) APIはインターフェイス=エンドポイントと思っておk →要はURL(http:…

【Rails/Rspec】リクエストスペックでAPIをテストする際に、よくやること

リクエストスペックの特徴 HTTP 動詞に対応するメソッド(get 、post 、delete 、 patch)を使う。 capybaraは使わない。 HTTPのレスポンスのステータスコードと実際のデータを含んだレスポンスボディを返す 200: OK - リクエストは成功し、レスポンスととも…

【超Vue.js】フィルターとミックスイン【セクション11 】

※ セクション8~10はわざわざ纏める必要あるか微妙だったので、一旦パス。 144. フィルターを使用して、一般的なテキストフォーマットを作成する フィルター…テキストをフォーマットするためのもの。文字を全部大文字にするみたいな。 今まではcomputedでやっ…

【記録】良記事とかをまとめておく

マインド エンジニアの劣等感との付き合い方 - Qiita 仕事を任せられるエンジニアになるために意識してほしいこと - 食べチョク開発者ブログ 【新人ITエンジニア向け】僕が仕事をする上で大事にしているポイントあれこれ - give IT a try 質問・学習などにつ…

【超Vue.js】コンポーネント間でデータを受け渡す方法【セクション7 】

87. 親子間のデータの受け渡しの必要性を理解する 親コンポーネント アプリケーションのApp.vueは親コンポーネント⇄LikeNumber、LikeHeaderは子コンポーネント →App.vueではLikeNumber、LikeHeaderを使っている。 (src/App.vue) <template> <div> <LikeHeader></LikeHeader> <h2>{{ number }}</h2> <LikeNumber :total-number="number" @my-click="incrementNumber"></LikeNumber> </div></template>

【超Vue.js】ゼロから始めるコンポーネント【セクション6 】

74. コンポーネントを使用して、再利用可能なVueインスタンスを作る 第一引数はコンポーネント名 第二引数はコンポーネントに関する情報をオブジェクトでセットする コンポーネントの中でデータを使う時は、データを関数にする必要がある。 以下はグローバル…

【超Vue.js】5. Vue CLIを使った実践的な開発をはじめる方法【セクション5 】

67. なぜVue CLIを使う必要があるのか Vue CLI(コマンドラインインターフェイス)...大規模な本格的な開発に必要。 なぜ必要? ファイルの分割 →大規模な開発で、ファイルを分けたり、くっつけたりしたい。 最終的なコードの軽量化 →改行、空白、コメントアウ…

【超Vue.js】Vueインスタンスとその内部構造はこうなっている【セクション4 】

50. イントロダクション Vueインスタンス Vueインスタンスって複数作れるの?他のjsからアクセスできるの?とかの内容 51. Vue インスタンスは複数作ることができる Vueインスタンスはなるべく複数使用しない方がいい 完全に独立してるなら使ってもおk。 #ap…

【超Vue.js】条件付きレンダリングとリストレンダリング【セクション3 】

37. v-elseを使って、v-ifがfalseの場合の処理を書く <div id="app"> <p v-if="ok">Hello</p> </div> new Vue({ el: '#app', data: { ok: true, } }) 38. v-else-ifを使って、複雑な条件式を作る <div id="app"> <p v-if="ok">OK</p> <p v-elseif="maybeOk">maybe OK</p> <p v-else>Not OK</p> </div> new Vue({ el: '#app', data: { ok: false, maybeOk:…

【超Vue.js】これがVue.jsの基礎、テンプレート構文だ【セクション2 】

はじめに 以下にUdemyの動画、超Vue.js2のメモを備忘録として書き連ねていきます。セクション毎に記事を分けます。 1. Vueの良いところ 簡単、柔軟、高性能 HTMLファイル内の一部にVueを取り入れる、一つのファイルをVueだけで作る、アプリ全てをVueにするSP…

selializerを使ったAPIの作成と、リクエストスペックについて

jsonのserializerとは? jsonを生成する仕組みのこと。 この生成したJSONのデータをレスポンスとして返す。 ActiveRecordは ActiveModel::Serialization を include している。 なので、そのまま以下のような記述もできる。 module Api module V1 class Arti…