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

shallow: true オプション

ルーティングファイル内でshallow: trueオプションを見かけることはあったのですが、何者なのかよく分かっていなかったので調べました! shallow: true オプションとは ネストしたパスを作る際にshallow: trueオプションを付けることで、 show/edit/update/d…

working copyの使い方模索

一昨日、gitを使えるアプリworking copyをiPad に入れたのですが、まだ余り使い方が分かっていないので使い方を模索してみました〜 clone、ブランチ切り替え、コミット確認 左上のプラスボタンを押すと自分がアクセスできるリポジトリ一覧が出てきます。 そ…

自分にアサインされているissue一覧表示

複数リポジトリのissueに自分がアサインされている時、把握するのが大変でした。 しかしそれを一覧で確認できることを今日知りました。。。!! やり方は以下の通りです。 gyazo.com githubのヘルプドキュメントに一通り目を通しておくと色んな便利機能を知…

iPadを買った!!

iPad、Apple Pencil、Smart Keybordを買いました!! 目的はお絵かきだったのですが、どうやらRubyの開発環境も整えられると知り、必要なアプリを入れてみました〜!! Gitを使うアプリ Gitを使うためにWorking Copyというアプリを入れました! Working Copy…

includesの挙動模索

普段、N+1問題を防ぐためにとりあえずincludesをしてしまうのですが、includesがどんな挙動をしているのか理解していなかったので調べることにしました! (昨日からActiveRecord読みたい気持ちが高まっていたため、includesのソースコードを読むことに挑戦し…

銀座Railsへ行った

銀座Railsへ行って、Railsコミッターの@kamipoさんと@yahondaさんのセッションをお聞きしてきました! Active Recordの難しい話もありましたが、お話が面白かったので分からないなりにも楽しむことができました!! 自分もすぐに取り入れていこうと思った内…

SQLの集合関数

SQLの集合関数についてしらべました〜 集合関数とは SQLにもとから用意されている関数です。 集合関数の種類 以下の5種類の関数があります。 COUNT:総数を取得 SUM:総和を取得 MAX:最大値を取得 MIN:最小値を取得 AVG:平均を取得 使い方 以下のようなre…

エスケープ文字

「%」や「_」をワイルドカードとしてではなく文字列として検索したいときに使用するエスケープ文字 エスケープ文字とは 「\」です。 「%」や「_」をワイルドカードとしてではなく文字列として検索したいときに使用します。 例:以下のようなeventsテーブル…

LIKE句

SQLのLIKE句について調べました。 LIKE句とは 完全一致だけでなく部分一致、前方一致、後方一致など曖昧な条件を指定できる構文です。 前提 以下のようなeventsテーブルがあるとします。 id name date description 1 Whistler 1999-11-09 Went hiking. 2 Puf…

IN句

以前から理解したいと思っていたIN句について調べました〜 IN句とは 一致するかの条件をまとめて判断出来るSQLの構文です。 具体例 以下のようなeventsテーブルを操作するとします。 id name date description 1 Whistler 1999-11-09 Went hiking. 2 Puffbal…

SQLの比較演算子

WHEREで条件を指定する際に必要となる比較演算子について調べました〜。 比較演算子 SQLの比較演算子には以下のものがあります。 a = b (a と b は等しい) a <=> b (a と b は等しい) a != b (a と b は等しくない) a <> b (a と b は等しくない) a < b (a …

テーブルの結合(join)

昨日、結合(join)について理解しきれないままだったので続きを調べました。 結合(join)の種類 以下の5種類があります。 INNER JOIN (内部結合) LEFT (OUTER) JOIN (左外部結合) RIGHT (OUTER) JOIN (右外部結合) FULL (OUTER) JOIN (完全外部結合) …

リレーショナルデータベースの表操作

選択・射影・結合という言葉について整理しておきたいと思い調べました! 表操作とは リレーショナルデータベースは表(テーブル)でデータを管理しており、この表を操作することを表操作といいます。 表操作のことを関係演算ともいいます。 リレーショナルデ…

SSLサーバ証明書とは?

昨日SSLサーバ証明書についてよくわからないままだったので調べました! SSLサーバ証明書とは サイトの運営者が実在し、ドメイン名の使用権があることを証明するものです。 SSLサーバ証明書があることで、ブラウザとウェブサーバ間でSSL暗号化通信を行う事が…

OpenSSLとは?

昨日、OpenSSLをアップデートしたらエラーが直ったという日記を書いたのですが、そもそも OpenSSLが何だかわかってなかったので調べることにしました。 OpenSSLとは OpenSSLは、SSLプロトコル・TLSプロトコルに使われるOSSです。 そもそもSSLとは SSLはイン…

またbundle installがmysqlでこけた

ちょっと期間があくとbundle installした際にmysql gemが入らなくなることがしばしばあります。 今回はopensslのバージョンが古いようでインストールに失敗しておりました。 無事bundle installできるまでの手順を書いておこうと思います。 エラー内容 bundl…

テキストファイルからデータ作成する際のエラー

本日はSQLの勉強をしておりました。 mysqlのコンソール上でデータベースとテーブルを作成したのち、 テーブルの各属性の値をタブ区切りで書いたテキストファイルを読み込んでデータを作成しようと試してみたのですが、以下のエラーが出ておりました。 mysql>…

データベース①

今日はそもそものデータベースの役割や種類、正規化について調べてみました〜! そもそもデータベースとは システムやユーザが扱うデータを後々扱いやすい形に整理して管理するものです。 何に関するどんな属性の値か、何と関連しているかなどを管理します。…

基本情報技術者試験

来年4月に基本情報技術者試験を受けてみようと思います! 何故やるか 以前からエンジニアとして働く上で必要となる基本的な知識が足りていない事を実感していました。必要となったらその都度調べたり勉強するようにしていたのですが、もっと体系的に幅広く学…

DumpファイルのデータをDockerのMysqlへ入れる

やっとDumpファイルのデータをDockerのMysqlへ入れることができたので やり方を書いておこうと思います! 方法 ダンプファイルを用意 ダンプファイルを用意し、アプリ直下へ置きます。 ダンプファイルの schema情報と現在のDBが違う状態となっている場合、ダ…

git rebaseコマンド使わずコミットまとめ直す

git rebaseコマンドが使いこなせず、元のブランチに戻れなくなる事が何度もありました。そこでrebaseコマンドを使わなくてもコミットを綺麗にまとめ直せる方法を気づかせてもらったので書いておこうと思います。 まずコミット履歴を調べます。 $ git log --o…

1つ前の変更との差分をforce-pushした時も確認

git

force pushすると1つ前にpushした内容との差分が見れなくなってしまうと思っていたのですが、差分を確認する方法を知りました! やり方 以下のようなforce-pushされている履歴の、force-pushedという部分をクリックします。 gyazo.com すると、1つ前のcommi…

日記

今日はお昼の時間にお誕生日のお祝いをして頂きました!! そして1ヶ月間のお試し期間も終了し、無事正式に今の職場で働くことになりました!! 環境も居心地も凄くいいし、 サービスはユーザーとしても開発側としても好きだし、これからも頑張っていきたい…

Grow.rb 〜例外処理とループ処理〜

本日はGrow.rbで例外処理とループ処理について学んできました! 以下はGrow.rbのイベントページです! growrb.doorkeeper.jp 制御構文 まずはループ処理の流れを変えるメソッドについて確認しました! 以下は制御構文についてまとめてあるるりまのページです…

UIViewControllerのライフサイクル

iOSアプリにはライフサイクルが存在し、実装していく上で理解しておく必要があるようです。 なのでUIViewControllerのライフサイクルの各状態について整理しておくことにしました! そもそもUIViewControllerとは MVC(Model-View-Controller)アーキテクチャ…

iOSアプリのチュートリアル

最近Ruby以外の言語も触ってみたい欲&クライアント側の実装気になる気持ちが高まっておりました。 そこで本日、Appleが公式で提供してくれているiOSアプリのチュートリアルをやってみました! 以下がそのリンクです! developer.apple.com チュートリアル概…

bundlerのバージョン固定してbundle update

rubocopのgemだけバージョンアップしたく、以下のようにコマンドを実行しておりました。 conservativeというオプションは、依存関係にあるgemをupdateしないためのオプションです。 bundle update --conservative rubocop しかし、これだとbundlerまで2.0.2…

rubocop-railsと言うVSCodeの拡張

ローカルでrubocopを実行し忘れたままリモートへプッシュしてしまうことが多く、申し訳ないなと思っておりました。 sleckのgithubの通知が飛んでくるチャンネルが自分へのrubocopからの指摘で埋もれる。。。w 「ローカルで実行する癖をつけなくては」と日報…

activerecord-import

レコードをいっぺんに複数作成するメソッドを以下のように書いてしまっておりました。 def import_hoges hoges = params[:hoges] hoges.each do |hoge| Hoge.create!( user_id: @login_user.id, recorded_at: hoge[:recorded_at], value: hoge[:value]) ende…

GASを触ってみる

今までスプレッドシートを使うことはたくさんあったものの、GASはなかなか触れずにおりました。 最近GASで動いてるいろんな便利機能をみることがあり、自分も触ってみたくなったので調べてみることにしました! GASとは GAS(Google Apps Scripts)とは、(スプ…