みそみそりんりんblog

勉強したことを書いていきます

Ruby

Rubyのメソッドの引数がHashの時、fetch使わんやつおる??

初期化の際の引数にハッシュを使う 「 | | 」を使った場合 def initialize(args) @id = args[:id] || 1 @name = args[:name] || "misomiso" end ↑これだと、falseとnilの区別ができねえじゃねえか! 「fetch」を使うと... def initialize(args) @id = args.f…

rmagickの使い方まとめ

rmagic使い方 ### ファイルを読み込む image_data = Magick::Image.read(img.path).first ### ファイルのフォーマット(PNG, JPG etc...) image_data.format ### ファイルのサイズ image_data.filesize 疑問点 最初は↓ Magick::Image.from_blob(buffer).shift…

CentOS8 で ruby gem "rmagick" インストール

Linuxに"Image Magic" をインストール $ yum install -y libwebp libwebp-devel $ wget https://imagemagick.org/download/ImageMagick.tar.gz $ tar zxvf ImageMagick.tar.gz # makefileにルールが追加される $ ./configure # コンパイル $ make # コンパイ…

Sinatra layoutのネストについて

実行環境 sinatra 2.1.0 問題 layoutを2重でネストさせたい 解決策 erb :"内側のlayout", :layout => :"外側のlayout" do erb :user(対象のview) end ↑これでいけるわ sinatraのREADME最強! 参考にしたサイト sinatrarb.com

Rails:Ajaxを使用してリクエストを送った際、Unprocessable Entity 422 となってしまう件について

実行環境 Rails 7.0.2 問題 js(jQuery)のajaxでcreateアクション(users::books#create)にリクエストを飛ばすとUnprocessable Entity 422となってしまう。 Rails側のエラーを見てみると「ActionController::InvalidAuthenticityToken (Can't verify CSRF toke…

Rails 7.0.2 => Asset `application.js` was not declared to be precompiled in production. エラーについて

実行環境 Rails 7.0.2 問題 app/assets/javascripts/application.jsが読み込めない〜 対応策 Declare links to your assets in app/assets/config/manifest.js. ↑とエラー文にあったため //= link_directory ../javascripts .js を記述 無事、app/assets/jav…

RailsとMinitest まとめ

MinitestとRSpecについて比較 Minitest 処理速度が速い。 元からついている機能が少ないので、拡張する必要がある。 ピュアRuby RSpec 最初からいろんな機能が全部入ってて便利。(多機能) 記述がDSL(可読性良) Railsテスティングガイドの要約(Minitest) requ…

Rubyのドメイン特化言語(DSL)

ドメイン特化言語(DSL: Domain-Specific Language) 問題領域に特化した言語を意味する 特定の作業の遂行や問題の解決に特化して設計されたコンピュータ言語。 Railsでは、Validations・ActiveRecord・Rake・RSpecなど幅広く使われている。 汎用語(GPL: Gener…