photo credit: Broken Bus Stop via photopin (license) Railsでアプリを作っていると、IPアドレスやMACアドレスのバリデーションをしたくなることがあります。 SQLサーバには、IPアドレスやMACアドレスに特化した型はないので、stringで保持してRails側のバリデーションで 整合性を取る必要があります。 そんな場合の、(たぶん)ベストプラクティス。 IPアドレスのバリデーションには、RubyのリゾルバライブラリであるResolvクラスを使うのが良いみたい。 Resolv::IPv6::Regexを使えば、IPv6のバリデーションもできる。 MACアドレスのバリデーションには、Resolv::IPv4::Regexのような便利なものはないので、 正規表現をベタ書きで対処。 システムによっては、デリミタをコロンまたはハイフンのみに統
![それRailsでIPアドレスやMACアドレスのバリデーション | BLOG.QuelLENcode](https://cdn-ak-scissors.b.st-hatena.com/image/square/ee05f80629b842f77340b4799845599002b2a117/height=288;version=1;width=512/http%3A%2F%2Fassets.tumblr.com%2Fimages%2Fog%2Ftext_200.png)