{"published":"2020-02-18 01:54:21","type":"rich","categories":["\u4f5c\u3063\u305f\u3082\u306e","Ruby","RuboCop","Ruby on Rails","Programming"],"url":"https://pocke.hatenablog.com/entry/2020/02/18/015421","blog_title":"pockestrap","height":"190","author_name":"Pocke","image_url":null,"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fpocke.hatenablog.com%2Fentry%2F2020%2F02%2F18%2F015421\" title=\"Rails/UniqueValidationWithoutIndex cop\u3092\u8ffd\u52a0\u3057\u305f - pockestrap\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","version":"1.0","description":"rubocop-rails \u306bRails/UniqueValidationWithoutIndex cop\u3092\u8ffd\u52a0\u3057\u307e\u3057\u305f\u3002 rubocop-rails\u306e\u6b21\u671f\u30ea\u30ea\u30fc\u30b9(\u304a\u305d\u3089\u304fv2.5.0)\u304b\u3089\u5229\u7528\u3067\u304d\u307e\u3059\u3002 github.com \u3053\u308c\u306f\u306a\u306b Rails/UniqueValidationWithoutIndex cop\u306f\u3001RDBMS\u306eunique index\u304c\u3064\u3044\u3066\u3044\u306a\u3044\u30ab\u30e9\u30e0\u306b\u5bfe\u3057\u3066\u3001Active Record\u306e\u30ec\u30a4\u30e4\u30fc\u3067uniqueness\u30d0\u30ea\u30c7\u30fc\u30b7\u30e7\u30f3\u3092\u66f8\u3044\u3066\u3044\u308b\u5834\u5408\u306b\u8b66\u544a\u3092\u3057\u307e\u3059\u3002 \u305f\u3068\u3048\u3070\u6b21\u306e\u30d0\u30ea\u30c7\u30fc\u30b7\u30e7\u30f3\u5b9a\u7fa9\u304c\u3042\u308b\u6642\u3092\u8003\u3048\u307e\u3059\u3002 class User < ApplicationRec\u2026","title":"Rails/UniqueValidationWithoutIndex cop\u3092\u8ffd\u52a0\u3057\u305f","blog_url":"https://pocke.hatenablog.com/","author_url":"https://blog.hatena.ne.jp/Pocke/","provider_url":"https://hatena.blog","width":"100%","provider_name":"Hatena Blog"}