zackey推し

IT系のこと書くぞい

【Ruby】型チェックをしてくれるGem「 Sorbet 」を試してみた(Railsへ導入〜動作確認まで)

f:id:kic-yuuki:20190714143720p:plain

個人的に今年から毎週読ませていただいている週間Railsウォッチにて、「Sorbet」というGemが紹介されました。

※アイコンかわゆい。

よければプロダクトにも導入してみたいな〜と思い、軽い気持ちで触ってみました。

  • この記事なに? 🙄
  • Sorbetとはなんぞや? 🤔
  • 本編(導入〜動作確認)
    • 環境
    • 導入
      • sorbetの初期化
        • sorbet配下に生成されるrbiファイルについて
      • 型チェックの処理を記述
    • 動作確認
      • 型チェックを実行
      • rails s→動作確認
        • 実行時エラーを無視するには?
  • おわり
    • 参考記事
    • 所感
続きを読む

【Ruby on Rails】Gem「ActiveDecorator」の紹介 View向けのメソッドを定義する

f:id:kic-yuuki:20190707164341p:plain

Userモデルみたいなクラスがあって、

  • first_name(姓)
  • last_name(名)

のようなカラムがあった場合、以下のようにfirst_nameとlast_nameを組み合わせて、full_nameという、Viewやレスポンス用のメソッドを実装するシーンがあるかと思います。

class User < ApplicationRecord
  def full_name
    first_name + last_name
  end
end

# 使用例(View側)
@user.full_name

ただ、このような実装はシステム拡大につれて多くなり、モデルのコードが冗長になるかと思います。

それを解消できるのがActiveDecoratorというGemです。

転職先でこのGemを知り、めっちゃ便利だと感じましたので、紹介したいと思います。

  • この記事なに? 🤔
  • 導入・実装手順
    • View以外で使用したい場合
  • おわり
    • 参考記事
続きを読む

GitHubのREADME.mdとかでよく見かけるバッチを「shields.io」で作成→表示させる

f:id:kic-yuuki:20190629173126p:plain

2019/05上旬、Gridsome x Netlifyを使って、実家の飲食店のサイトを公開しました。

そのときの記事はこちら。

kic-yuuki.hatenablog.com

Googleアナリティクスを見ていると、以外とアクセス数が伸びていて、だいたい一日あたりのページビューが70-100あたりをフヨフヨしています。

メニュー画像が載っていてよかったというフィードバック、2019/05末開店からお店も盛況なようで良い限りです。😚

ただ、多くの人が見てくれていることを考えると、今のしょぼいデザインではまずい(恥ずかしい)...という気持ちになりました。秋(2019/09)くらいに向けて、デザインをリニューアルしたいと思います。

デザイン→見た目繋がりで、サイトだけでなく、GitHubリポジトリの方も見栄えをよくしたい...という欲が出てきました。

とりあえず作成したことのない、バッチを表示させてみるか...という経緯でこの記事が生まれました。

  • この記事なに? 🤔
  • バッチを作成→SVGURLを生成してくれるサービス「shields.io」
  • 他にもバッチ作成サイトがあった
  • おわり
    • 参考記事
続きを読む

【Ruby】gem「nokogiri」を使ってHTML要素を抜き出す

f:id:kic-yuuki:20190618091152p:plain

bundle installした時にRubyのバージョンがあってなくて「nokogiriのインストールが終わらん〜」って悶絶するかたをよく見る気がします。

今回は、お仕事で例のnokogiriを調査→使うシーンがありましたので、調査時のメモを書き残しておこうかなと思います。

続きを読む

【Udemy】webpackを1日習得というコースをやったので感想など

f:id:kic-yuuki:20190605091012p:plain

気がついたら、前回記事で50記事を超えていました。🎉

そう思うと、このブログも1年以上続いているんですね。

改めて、周りの環境と Write Blog Every Week に感謝です。

  • この記事なに? 🙄
  • どんな内容? 🤔
  • 得られたこと 💪
    • webpack.config.jsの設定方法(特にローダー周り)
    • eslint系の設定
    • 【副産物】package.json周りの設定
  • おわり
続きを読む