{"type":"rich","description":"SmartHR\u3067\u306fRuby on Rails\u3092\u591a\u304f\u306e\u30b5\u30fc\u30d3\u30b9\u3067\u63a1\u7528\u3057\u3066\u3044\u307e\u3059\u3002 \u305d\u306e\u305f\u3081\u3001\u4e0d\u8db3\u3057\u3066\u3044\u308b\u6a5f\u80fd\u3084\u4e0d\u5177\u5408\u304c\u3042\u308c\u3070rails/rails\u3078\u30b3\u30f3\u30c8\u30ea\u30d3\u30e5\u30fc\u30c8\u3059\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002 \u4eca\u65e5\u306f\u3001\u65e5\u3005\u306e\u307d\u3064\u307d\u3064\u3068\u3057\u305f\u30b3\u30f3\u30c8\u30ea\u30d3\u30e5\u30fc\u30c8\u306e\u4e2d\u304b\u3089\u3001Rails 7.1\u306b\u8ffd\u52a0\u3057\u305fUNIQUE\u5236\u7d04\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3057\u307e\u3059\u3002 unique_constraint(UNIQUE\u5236\u7d04) UNIQUE\u5236\u7d04(unique_constraint)\u306fRails7.1(\u57f7\u7b46\u6642\u306f\u672a\u30ea\u30ea\u30fc\u30b9)\u304b\u3089\u5229\u7528\u53ef\u80fd\u306b\u306a\u308bActiveRecord\u306e\u65b0\u6a5f\u80fd\u3067\u3059\u3002 rails/rails#46192 PostgreSQL\u3067\u3057\u304b\u5229\u7528\u3067\u304d\u307e\u305b\u3093\u304c\u3001\u4e0b\u8a18\u306e\u3088\u2026","version":"1.0","blog_title":"SmartHR Tech Blog","title":"Rails\u3067UNIQUE\u5236\u7d04\u3092\u9045\u5ef6\u5b9f\u884c\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f","author_name":"smarthr","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Ftech.smarthr.jp%2Fentry%2F2023%2F05%2F22%2F175723\" title=\"Rails\u3067UNIQUE\u5236\u7d04\u3092\u9045\u5ef6\u5b9f\u884c\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f - SmartHR Tech Blog\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","categories":[],"image_url":null,"provider_url":"https://hatena.blog","author_url":"https://blog.hatena.ne.jp/smarthr/","provider_name":"Hatena Blog","url":"https://tech.smarthr.jp/entry/2023/05/22/175723","published":"2023-05-22 17:57:23","width":"100%","blog_url":"https://tech.smarthr.jp/","height":"190"}