Dans Postgresql NULL
n'est égal à aucun autre NULL
. Par conséquent, les lignes que vous créez ne sont pas les mêmes (du point de vue de Postgres).
Mettre à jour
Vous avez plusieurs façons de le gérer :
- Interdire le
Null
valeur pour la clé étrangère et utiliser une valeur par défaut - Remplacer le
save
méthode de votre modèle pour vérifier qu'aucune ligne de ce type n'existe - Changer la norme SQL :)