ContentfulのContent modelにvalidationを設定する
このブログの記事はContentfulで管理していて、Content modelに slug
Fieldを用意して、その値を記事のURLとして設定している。
記事のURLのルールとして YYYY-MM-DD-unique-name
とするようにしていたが、命名規則のvalidationは設定していなかった。
記事を書く際に毎回設定しているものなので間違えることもないだろうと思っていたが、 slug
でsortした際に unique-name
のみになってしまっている記事が数件見つかった。
URLが変わってしまうと元のページが404になってしまうので、そもそも間違えない仕組みを導入すべきだと思い、 slug
validationの Match a specific pattern
を設定することにした。
正規表現が使えるので、
^\d{4}-\d{2}-\d{2}-.+$
を設定することで、命名規則に沿わない場合はエラーが出るようにできた。
これでもうURLミスは起きないので一安心。