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)とは、(スプ…

改めてjsonについて調べた

API開発をしているのですが、jsonの扱いに慣れておらず以下のエラーとなっておりました。 ActionDispatch::ParamsParser::ParseError このエラー自体は以下のjsonをコピペするとエラー箇所を教えてくれるツールを使って解決したのですが、ちゃんとjsonについ…

「ハッカーと画家(前半)」を読んだ

ハッカーと画家という本の前半を読みました! 歴史・哲学・お金・ビジネスなど多方面の分野からソフトウェア開発について語られている非常に興味深い本でした! 自分が学んでいることだけに目がいきがちですが、一歩引いた視点で考えることも大事だなと思い…

Tamarb Rspecモブプロ 〜共通メソッドをモジュールへ切り出す〜

本日はTamarbのRspecモブプロがあり、今回はfeature specを書き進めていきました。 以前と同様、エディタごとにチーム分けをし、自分は人数比的にRubyMineチームへ参加しました。 知ったこと 1つのファイル内以外でも使いたいメソッドはモジュールに切り出…

Swagger

昨日Heisei.rbへ参加した際、Swaggerというツールを知り、気になったので触ってみました! 一緒に毎日ブログ投稿するメンバーの影響で今日は動画入れてみましたっ!!w Swaggerとは REST APIの設計やドキュメント作成、動作確認ができるツールです。 REST AP…

committeeというgemがきになる

heiseirbさんへ参加させていただきました! その中でも自分が今まさにこれからAPI開発するところなので、 「API開発におけるドキュメント管理」というLTがとてもタイムリーで気になりました! そのお話の中で以下のgemを紹介されてました。 https://github.c…

Ebisu.rb #25でLTをした

本日はEbisu.rbでLTをしてきました! そのスライドは以下です! speakerdeck.com 無事終わってよかったし、嬉しい言葉いただけたし、LT申し込んで良かった!!

情報調べる系コマンド極めたい。

普段dockerからmysqlを使っておりましたが、ローカルからmysqlを使いたい事情があり接続を試みました。 しかし以下のように接続に失敗しました。 $ mysql -uroot fish: Unknown command mysql 理由を調べるため、brew info mysqlコマンドで調べてみたところ…

Docker内でvimを使えるようにする

dockerのコンテナに入ってvimコマンドでファイルを確認しようとしたところ、vimが使えないようでした。 viコマンドも試しましたが同じく使えない。。。 $ docker exec -it bc4caaxxxxxx /bin/bash root@bc4caaxxxxxx:/# vim tmp/Dump.sql bash: vim: command…

複数の秘密鍵を1つのPCで管理する

1つのPCで複数の秘密鍵を使い分けたい状況がありました。 その設定方法について調べたので書いておこうと思います! 状況 .sshディレクトリにid_rsaがもともとあり、id_rsa_hogeという秘密鍵も追加するとします。 とあるサーバーへsshで接続する時だけはid_…

rubocop&rubocop-railsを導入してみる

rubocop&rubocop-railsを個人練習用リポジトリに導入してみました! その際の手順について書いておこうと思います! やり方 gemの導入 ローカル&CI上で動かしたいので:development, :testで使えるようにしました。 group :development, :test do 略 gem 'rub…

grepをrake routes時にも使う

パスはどんな感じになってたっけ?と思いrake routesコマンドを実行することが度々あります。 でもrake routesで出てくるパスの量が多くその中から確認したいパスを見つけるのに時間がかかっておりました。 rake routesで表示できるパスを絞り込む方法があっ…

当たり前のことを出来るようにしていきたい

どうするか迷ったら自己流ではなく、他の方々のやり方を参考にしなくてはいけないな、と本日実感しました。 「これでいいか」と自己流で進めてしまうと、指摘する部分が多くなり、レビュワーさんや周りの方々の負担が増えてしまいます。 「他の方々のやり方…

パスの連結はよろしくないらしい

以下のようにファイルパスを指定していたらrobocopに指摘されました。 deleted_image = File.new(Rails.root.join(‘public/deleted.jpg’), ‘r’) なんで良くないのか分からなかったので調べてみたところ以下の記事を発見しました。 qiita.com どうやらパスを…

submodule側のブランチを切り替える

submodule側のデフォルトブランチ(develop)にはまだ取り込まれていない機能を弄りたい状況でした。 そこでsubmodule側のブランチを切り替える方法を調べたので書いておこうと思います! 方法 submoduleのディレクトリへ移動する。 ~/p/a/app (develop)$ cd s…

rm -fr "/.git/rebase-merge

git rebase -i HEAD~2 などのようにrebaseでコミットをまとめようとしたのですが、以下のようにまとめられませんでした。 (今まであまりコミットを綺麗にまとめることをしてこれていなかったのでrebaseに慣れていない汗) $ git rebase -i HEAD~2It seems tha…

[postgresql] dyld: Library not loadedの解決方法

postgresqlが動かなくなり、アンインストールしようか悩むほど格闘したので、解決方法を書いておこうと思います。 (長時間格闘した割にあっさり直ってしまいましたが) エラー内容 数日ぶりにpostgresqlを使用したアプリを立ち上げようとしたら接続できなくな…

[CircleCI] "You must use Bundler 2 or greater with this lockfile."というエラー

CircleCIの設定を自分でも書いてみたいと思い、自分の個人アプリにCircleCIを導入しておりました。 エラーが出て少々ハマった部分があったので書いておこうと思います! エラー内容 以下のように、bundle installを実行する部分で `You must use Bundler 2 o…

git hubの通知を見直してみる

git

Watchしておきたいリポジトリが複数あり、watchしていたのですが、メールの量が多すぎるようになりどうしようかと思っておりました。そこで以前通知設定ができると教えてもらったことを思い出し、設定してみることにしました! 方法 SettingsページからNotif…

タイムゾーンについて考察

JISで表示されている日時を日本時間に直したい表示がありました。そこで安易にrails全体の設定を修正しようとしてしまったのですが、色々考慮する必要があると気づいたのでそのことについて書いておこうと思います。 最初の方法 config/application.rbで以下…

Gitのsubmodule

git

Gitのsubmoduleという機能を初めて知りました。 まだ未知の部分が多いですが、わかった部分について勝ておこうと思います! Gitのsubmoduleとは Gitのsubmoduleとは1つのGitレポジトリの中に、他のGitレポジトリも含めてバージョン管理を行う機能です。 どん…

macOSの再インストールが難航している

macOSを再インストールしようとしたのですが、「インストールの準備中にエラーが起きました。このアプリケーションをもう一度実行して下さい。」というエラーがで続けています。。。 まだ未解決ですが、色々試していい兆しが見えてきたので作業内容や調べた…

「プロジェクトに途中参加した時、どのようにキャッチアップするか」という記事を読んだ

新しいプロジェクトに入るときに、どこから理解を進めていけばスムーズなんだろうと思い、「プロジェクトに途中参加した時、どのようにキャッチアップするか」という記事を読みました。 元記事は以下のリンクです! blog.mmmcorp.co.jp 上記の記事で書かれて…

apiをvueで表示させる

昨日書きかけだったapiをvueを使って表示させる部分の流れについて書いておこうと思います! (クリックしたコメントをapiをたたいて取得してvueで表示させるだけのものです) foremanを導入 webpackerとrailsの起動を簡単にできるようにしてくれるforemanとい…

railsにvue.jsを入れる

せっかくrailsでapiを作ったので、vueを導入して表示できるようにしたいと思いました。 vueを入れる流れを書いておこうと思います。 流れ gemを追加 Gemfileに以下を追記してbundle installします。 gem 'webpacker', github: 'rails/webpacker' webpackerを…