karlley's tech blog

学習メモや記録とか

Tips

Gitで未追跡のファイルやディレクトリを削除したい

FBCのRailsのdevise gemを使ったプラクティスを進めています。 RailsやGemが自動生成したファイルを削除したくなる状況が度々あったので、Gitで未追跡のファイルやディレクトリを削除する方法を調べてみました。 結論 git clean コマンドを使うとgit未追跡の…

rails g controller で不要なルーティングの追加をスキップしたい

FBCのRailsのプラクティスでdevise gemの使い方を学んでいます。 ログイン機能とプロフィールページの追加にUserモデルのcontrollerが必要になりました。 既にに必要なルーティングは追加済みだったのでrails g コマンドでcontrollerを作成する際にルーティ…

SQLを生成するメソッドを呼ぶ順番は生成するSQLに影響しない

RailsでSQLを生成するメソッドの呼び出し順でSQLが変化するのか分からなかったのでコンソールで試して調べて見ました。 結論 SQLを生成するメソッドを呼ぶ順番は生成するSQLに影響しない。 下の2つのSQLは同一になる。 Book.all.order(:id) Book.order(:id).…

i18nのhuman系メソッドはモデルだけでなくインスタンスからも呼び出せる

i18nでモデル名やカラム名を参照するhuman系メソッドはモデルからしか呼び出せないと思っていましたが、インスタンスからも呼び出せるようです。 human系メソッドとは? i18nでActiveRecordのモデル名、カラム名を参照するメソッド。メソッド名が長いので勝…

ヒアドキュメントでSQLを読み易くする

Sinatraを使ったメモアプリを開発中です。 rubyファイル内の長くて読みにくいSQLを読み易く記述する方法を調べました。 結論 ヒアドキュメントを使うと長いSQLの可読性が上がるかもしれません。 rubyファイル内のSQLは次のように書き換えることができます。 …

RubyのSecureRandom.uuidで生成した文字列の長さについて

FBCのSinatraとDBを使ったメモアプリの開発に取り組んでいます。 DBに保存するレコードのRPIMARY KEYとしてSecureRandom.uuid で生成した文字列をCHAR型のカラムに保存しようと考えています。 最大文字列長をCHARに設定しようと思ったのですが、SecureRandom…

RailsのコードをVSCodeで読むための設定

Railsの仕様について気になる部分があったのでRails gemのソースコードを読んでみようと思いました。 gemのソースコードをVSCodeで読むための設定について調べました。 結論 bundle open gem_name で開くデフォルトエディタをVSCodeに設定すると便利。 設定…

README用のgifアニメーションを作る方法

README内にコマンドラインやアプリケーションのアニメーション画像を貼る際のgifアニメーションの作り方について調べました。 結論 mac純正のキャプチャソフト、gif変換ソフトffmpeg を使って作る。 キャプチャソフトを使ってアニメーション用のキャプチャを…

GitHubのREADMEに画像を表示したい

Sinatraでのメモアプリ作成も終わりに近づいてきました。作成したリポジトリのREADMEに画像を表示したかったので方法を調べました。 結論 新規issueページで画像URLを生成して、READMEに生成した画像URLを貼り付ける。 手順 対象リポジトリのIssues タブ内の…