title: Avoiding duplicates with factory_boy factories
body: <p>I'm using <a href="https://github.com/rbarrois/factory_boy">factory_boy</a> to create test fixtures. I've got two simple factories, backed by SQLAlchemy models (simplified below).</p>
  
  <p>I'd like to be able to call <code>AddressFactory.create()</code> multiple times, and have it create a <code>Country</code> if it doesn't already exist, otherwise I want it to re-use the existing record.</p>
  
  <pre><code>class CountryFactory(factory.Factory):
      FACTORY_FOR = Country
  
      cc = "US"
      name = "United States"
  
  
  class AddressFactory(factory.Factory):
      FACTORY_FOR = Address
  
      name = "Joe User"
      city = "Seven Mile Beach"
      country = factory.SubFactory(CountryFactory, cc="KY", name="Cayman Islands")
  </code></pre>
  
  <p><strong>My question is: how can I set up these factories so that factory_boy doesn't try to create a new Country every time it creates an Address?</strong></p>