def create_taxon(request): new_data = dict(request.POST) dbsession = DBSession() taxon = Taxon() for k, v in new_data.items(): if v == '': v = None if hasattr(taxon, k): setattr(taxon, k, v) dbsession.add(taxon) dbsession.flush() dbsession.refresh(taxon) return {'item': taxon.as_json_dict()}
def gen_sql(records): with transaction.manager: for r in records: id = None for t in 'Kingdom', 'Phylum', 'Class', 'Order', 'Family', 'Genus', 'Species': try: print t, r[t] taxon = DBSession.query(Taxon).filter_by(taxon_type = t, name = r[t], parent_id = id).one() print taxon except NoResultFound: taxon = Taxon(taxon_type = t, name = r[t], parent_id = id, author=r[t+'_author'], source=r[t+'_source']) DBSession.add(taxon) DBSession.flush() id = taxon.id print taxon.id, taxon.taxon_type, taxon.name, taxon.parent_id