みかづきメモ

学習したことのメモとか、日記とか、備忘録。

Rails でエラーメッセージを良い感じにしたい

rails-i18n を入れてくれるとだいたい良い感じにしてくれるんですけども、
「なんかちがうんよー」みたいな時もあります。

例えば、次のようなとき:

# attachment.rb
class Attachment
  belongs_to :illust

  mount_uploader :file, ImageUploader
end

# illust.rb
class Illust
  has_many :attachments

  validates :attachments, length: {in: 1..10} # 10枚まで
end

f:id:MikazukiFuyuno:20170223221627p:plain:w300

と、エラーメッセージは画像のようになっちゃいます。
それだと意味不明で困るので、下のようにすれば良い感じになります✨️

ja:
  activerecord:
    attributes:
      illust:
        attachments: "添付ファイル"

    errors:
      models:
        illust:
          attributes:
            attachments:
              too_short: "は%{count}枚以上必要です。"

f:id:MikazukiFuyuno:20170223221519p:plain:w300

やったね。

ちなみに、バリデーションエラーのキーは、ここをみるといいかも。

rails-i18n/ja.yml at master · svenfuchs/rails-i18n · GitHub

Ruby で匿名クラスをつくりたい

匿名クラスを作りたかった。

@ninomiya = Class.new do
  attr_accessor :asuka
end.new
@ninomiya.asuka = "かわいい"

参考:

React Router でサブディレクトリをルートとして扱いたい

GitHub Pages みたいに、 https://fuyuno.github.io/hoge/ という URL しか使えないとき、
React Router で /hoge をルートとして扱いたかった。

続きを読む

SSH しようとしたら No user exists for uid XXX って言われる

SSH しようとしたら、見かけないメッセージで怒られました。

$ ssh ~~~
No user exists for uid 501

(。・ω・。)...
そういうときは、ターミナルのセッションを再起動(っていうのかな?)すれば直ります。
ちなみに原因はわかりませんでした(なんか名前が取得できないらしい)。

Wallpaper Engine の仕組みが気になったので

先日、 Twitter してたら面白そうなアプリのツイートが流れてきました。

store.steampowered.com

どういう仕組みで背景に動画を流しているのか気になったので、
とりあえず想像でいろいろ試してみました。

続きを読む