在使用many-to-many
table
定义的unique_index
关系中插入重复元素时,从Postgres传播错误的正确等待时间是什么:
schema "books" do
...
many_to_many :authors, Author, join_through: "books_authors"
end
preload(book, :authors)
|> change
|> put_assoc(:authors, authors)
|> unique_constraint(:authors, name: :books_authors_book_id_author_id_index)
所以这会引发错误:
** (Postgrex.Error) ERROR (unique_violation): duplicate key value violates unique constraint "books_authors_book_id_author_id_index"
可能的解决方案是使用BookAuthor
架构,但有没有办法让它以无模式方式工作?