#check if event already exists def commit_organisation_events(__organisation, __event): #te = type(__event) _event = session.query(Event).filter(Event.ETitle == __event.ETitle).first() #check if organisation exists _organisation = session.query(Organisation).filter(Organisation.OName == __organisation.OName).first() _organisation_Events = None # many to many: # if both exist dont create either, but check association. => it's possible that an event is there + organisations is there but the event is created by another organisation if ((_event != None) and (_organisation != None)): _organisation_Events = session.query(Organisation_Events).filter(and_(Organisation_Events.FK_EID == _event.EID, Organisation_Events.FK_OID == _organisation.OID)).first() if (_organisation_Events == None): # create only the new association _organisation_events = Organisation_Events(event = _event, organisation = _organisation) session.add(_organisation_events) session.commit() else: if(_event==None): #_event = Event(ETitle=eventName, Edate='20.07.2019', EUrl='www.hallo.de') _event = __event if(_organisation==None): #_organisation = Organisation(OName=organisationName, ODescription='Super Orga') _organisation = __organisation # create only the new association: missing events and/or organisations will be commited automatically _organisation_events = Organisation_Events(event = _event, organisation = _organisation) session.add(_organisation_events) session.commit() commit_organisation_events(__organisation, __event, rcolumn, rcolumn_target) '''eventlist = [] organisationlist = [] organisation_events_list = [] _event1 = Event(ETitle='event1', Edate='20.07.2019', EUrl='www.hallo.de') eventlist.append(_event1) _organisation1 = Organisation(OName='Supger GMBH') organisationlist.append(_organisation1) organisation_events_list.append(Organisation_Events(event = _event1, organisation = _organisation1)) _event = Event(ETitle='event2', Edate='20.07.2019', EUrl='www.hallo.de') eventlist.append(_event) _organisation = Organisation(OName='ok CoKG') organisationlist.append(_organisation) organisation_events_list.append(Organisation_Events(event = _event, organisation = _organisation)) organisation_events_list.append(Organisation_Events(event = _event1, organisation = _organisation)) _event1 = Event(ETitle='event2', Edate='20.07.2019', EUrl='www.hallo.de') _organisation = Organisation(OName='ok CoKG') organisation_events_list.append(Organisation_Events(event = _event1, organisation = _organisation)) #organisation_events_list.append(Organisation_Events(FK_EID=_event1.EID, FK_OID=_organisation.OID)) # Add a user #session.add_all(eventlist) #session.add_all(organisationlist) session.add_all(organisation_events_list) session.commit() ''' # Query the user #our_user = session.query(User).filter_by(name='jesper').first() #print('\nOur User:') #print(our_user) #print('Nick name in hex: {0}'.format(our_user.nickname.encode('utf-8')))