>>236
教えていただいた通りにやってみたんですが結果は同じでした。
修正箇所のlower()が影響していなかったのかなと思います。

バリデーションでタグの数を2つまでと指定していても、
それを無視して3つ(3種類のprojectx)で問題なく保存されてしまいます。

残念ながら自分の力では原因を探し出せません。