いてづきブログ

情シスでやってみたことの備忘録

Ruby

React + Sinatraを試してみた

経緯 ポートフォリオはクライアントサイドだけで作ったのでサーバサイドと連携したものも試してみたいなと思った。 以前サイゼリヤ1000円作ったときにSinatraが手軽でいいなと思ったので、SinatraでAPI作ってReact(というよりはaxios)で叩くことを試してみ…

サイゼリヤ1000円をRubyでざっくり作ってみた

qiita.com サイゼリヤ1000円ガチャがバズっていたので自分でも練習として作ってみた。 github.com フレームワークはSinatraにしてみた。 初めて使ったけど爆速でWebアプリが動いてすごい。 ときどき、Railsはオーバースペックみたいに言われるのがちょっとわ…

RubyでEXIFの日時を変更する

GWの成果物です。 github.com Googleフォトのアルバムの並び順は古い順、新しい順、最近、カスタムの4つしかなく、ファイル名でソートすることが出来ません。 カスタムにしても撮影日時などのEXIF情報の時刻が全く同じせいか入れ替わることがあったりして不…

RubyKaigi2019に行ってきました

もう1週間も経ってますが、RubyKaigiに行っていました。

railsにslimを導入するためにしたこと

slim-railsの導入 erb2slimを実行しようとしたが… I18nを導入 erb2slimを再実行 まとめ railsのviewをslimで書くためにやったこと。 slim-railsの導入 Gemfileにslimを入れてbundle install。既存のerbを変換するためにhtml2slimも同時に入れる。 gem 'slim-…

rbenvで最新版のrubyがインストール出来ないとき

rbenvで最新版のrubyをインストールしようとした rbenv install 2.6.1 && rbenv global 2.6.1 すると、エラーが出た。 ruby-build: definition not found: 2.6.1 See all available versions with `rbenv install --list'. If the version you need is missi…

Modelのアップデートでカラムを動的に変える

Railsの処理の中で、更新するカラムを動的に変えたい場合の書き方。 公式ドキュメント読んでもよくわからなかった(書いてなかった)のでメモ。 userのhogeもしくはmogeのどっちかをfugaに更新したい場合、下記のように書く。 field = user.condition? ? :ho…

attr_accesorとpublic_send

classのattrに対して下記のようなpublic_sendで値を設定できるらしい。 public_send("#{attribute_name}=", val) ということは、obj.hoge=の`hoge=`はメソッドなのか?と思って呟いていたら、attr_*はhoge フィールドとhoge= メソッドを定義するものだと教え…