スリ飯屋Malankaのフリーエンジニアな日々

IT実務未経験から約1年、東京でフリーランスのRuby on Railsエンジニアに転職。約2年半、大阪中崎町でスリランカカレーの間借りしてました。フリーランスエンジニアになるためのノウハウ、スリランカの事を発信していきます。

技術関連-Ruby

RSpecで、Base64エンコードされた画像ファイルをテストする

こんにちは、mah(@RailsRubyMah6h)です。 今回は、 RSpecでBase64エンコードされた画像ファイルをテストする です。 1、 テストに使う画像ファイルを、Base64でエンコードしたバイナリ文字列に変換する (下記のようなサイトを使うとラクです) https://lab.sy…

Rubyで画像ファイルの形式(gif, png, jpg)を判定する

こんにちは、mah(@RailsRubyMah6h)です。 今回は、 画像ファイルの形式をバリデーションする必要があったので、 備忘録として残しておきます。 今回の例では、 Base64でエンコードされた、画像のバイナリ文字列 が渡ってくることを想定します。 ファイル名の…

【Rails6】gem toastr-railsを導入できない【ReferenceError: toastr is not defined】

【Rails6】gem toastr-railsを導入できない【ReferenceError: toastr is not defined】 出ているエラー ReferenceError: toastr is not defined 結論 下記の記事の手順通りにやると、toastr-railsを入れられました。 medium.com 起きていたこと 公式ドキュメ…

【Ruby on Jets】dynamodb-localを実行した時に、javaのバージョンが古くてエラー発生。Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/logging/log4j/spi/ExtendedLogger : Unsupported major.minor version 52.0

こんにちは、mah(@RailsRubyMah6h)です。 このブログでは、 僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、 ノウハウなどを書いていきます。 今回は、 Ruby on Jetsで、dynamodb-localを実行した時に、javaのバージョンが古くて発生した…

【Ruby】aタグのhref属性を書き換えて、target="_blank"も付与する方法【gsub】

こんにちは、mahです。 このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。 今回は、aタグのrel属性を書き換えて、target="_blank"も付与する方法 についてです。 結論 gsubを使って書き換え…

【Ruby Selenium】wait.untilブロックでTimeoutしたら外側にraiseされる

こんにちは、mahです。 このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。 今回は、 Seleniumの、wait.untilブロックでTimeoutしたら、waitの外側にraiseされる についてです。 Seleniumリフ…

【Ruby】Seleniumでエラー Other element would receive the click の解決方法

こんにちは、mahです。 このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。 今回は、Seleniumで、Other element would receive the click というエラーが出た場合の解決方法 についてです。 S…

【Ruby スクレイピング】Seleniumで要素が空かどうか判定する

こんにちは、mahです。 このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。 今回は、Selenium Webdriverで要素が空かどうか判定する tipsです。 最近スクレイピングにハマっています。 色んな…

【Rails】DBに紐つかない属性(カラム)をモデルに追加する

こんにちは、mahです。 このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。 今回は、DBに紐つかない属性(カラム)をモデルに追加する についてです。 「DBに保存しないでいいけど、属性持たせ…

【Rubyでスクレイピング】Seleniumでdata属性を取得

転職を絶対成功させたい、駆け出しエンジニアの方へ このブログからよく購入されている、 駆け出しエンジニアのマインドセットができるnote2点です↓↓↓ 【大人気記事】駆け出しエンジニアの転職が爆速成功する15の掟|mah@スリ飯屋malanka:フリーエンジニア…

【正規表現】Rubyで、文字列がURLかどうかをチェックする

こんにちは、mah(@RailsRubyMah6h)です。 このブログでは、 僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、 ノウハウなどを書いていきます。 今回は、 【正規表現】Rubyで、文字列がURLかどうかをチェックする です。 URI.regexp.match(…

【Ruby】privateメソッドはModule#instance_methodsでの検索対象外

privateメソッドは、Module#instance_methodsの検索対象外。 Hoge.instance_methods(false).include?(:public_method) #=> インスタンスメソッドの名前が配列で返却される。 検証 Articleモデルに、publicメソッドとprivateメソッドを定義。 class Article d…

herokuで画像ファイルをassets/下に置いても認識されない

herokuで画像ファイルをassets/下に置いても認識されない テキストを音声にしてmp3ファイルを生成し、assets/audiosディレクトリ以下に保存 1のファイルを取得しS3にアップロード 1のファイルを削除するということをしていました。 が、herokuではどうもasse…

【Ruby】URL文字列から、相対パスを取得する手順

【Ruby】URL文字列から、相対パスを取得する手順 こんにちは、mahです。 このブログでは、自分がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。 今回は、URL文字列から、相対パスを取得する手順 をまとめまし…

【Ruby】論理演算子 &&= について

&&=について ||= はよく見るのですが、&&= は業務で初めて見て、??となったので備忘録として残しておきます。 左辺がtrueと見なされる値なら、右辺を評価し、結果を左辺に代入するという挙動をします。 例、 irb(main):002:0> user = 'ユーザーです' => "ユ…