I'm having the same problem. It looks like your factory definitions
will create all the records in the database before you start. Then
when you come along and do Factory.create(:my_thingy) if the object
has a unique constraint it'll get an error because FG tries to create
a new object ready for writing to the DB, but there's another one
already there.
If FG is going to create all the records defined in the factory
definitions before your tests start then it really needs Factory.read
(:etc) to complement Factory.build and Factory.create.
It's not much use creating associations either.
I'm not sure if this is a feature, a bug or whatever. It does mean
that I can't use FG for useful work.
Cheers
John Small