för receptet "endast unika taggar" använder jag vanligtvis det unika objektreceptet, eller någon variant av det:http://www.sqlalchemy.org/trac/wiki/UsageRecipes/UniqueObject .
Detta kräver naturligtvis en SELECT mot en viss rad för att avgöra om den finns först. "Upsert"-tekniken, som använder databasspecifika kommandon för att INFOGA eller UPPDATERA en rad baserat på en bestämning på databassidan, stöds inte direkt av ORM just nu. Du är i alla fall på Postgresql som faktiskt inte stöder någon inbyggd "upsert"-funktion förutom ett mycket besvärligt system som använder vanliga tabelluttryck.