Ejemplo n.º 1
0
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()}
Ejemplo n.º 2
0
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