import csv def database(csv_rows, object_map): """ takes rows from csv_rows and imports the image database to display my dissertation images """ class LedgerItem(object): def __init__(self, description, department, context=None, level=None, unit=None, room=None, materials=None, culture=None, provenance=None, date=None, artist=None, inscriptions=None, subject=None, city=None, collection=None, number=None, notes=None, credit=None, link=None, license=None, link2=None, link3=None, image1=None, image2=None, image3=None, image4=None, image5=None, image6=None, image7=None, image8=None, image9=None, image10=None, image11=None, source=None): self.description = description self.department = department self.context = context self.level = level self.unit = unit self.room = room self.materials = materials self.culture = culture self.provenance = provenance self.date = date self.artist = artist self.inscriptions = inscriptions self.subject = subject self.city = city self.collection = collection self.link = link self.number = number self.notes = notes self.credit = credit self.link2 = link2 self.license = license self.link3 = link3 self.image1 = image1 self.image2 = image2 self.image3 = image3 self.image4 = image4 self.image5 = image5 self.image6 = image6 self.image7 = image7 self.image8 = image8 self.image9 = image9 self.image10 = image10 self.image11 = image11 self.source = source with open("DissertationDB.csv") as object_map_file: reader = csv.DictReader(object_map_file) object_map = {} for row in reader: object = row["self"] object_map[object] = {"description": row["description"], "department": row["department"], "context": row["context"], "level": row["level"], "unit": row["unit"], "room": row["room"], "materials": row["materials"], "culture": row["culture"], "provenance": row["provenance"], "date": row["date"], "artist": row["artist"], "inscriptions": row["inscriptions"], "subject": row["subject"], "city": row["city"], "collection": row["collection"], "number": row["number"], "notes": row["notes"], "credit": row["credit"], "link": row["license"], "link2": row["link2"], "image1": row["image1"], "image2": row["image2"], "image3": row["image3"], "image4": row["image4"], "image5": row["image5"], "image6": row["image6"], "image7": row["image7"], "image8": row["image8"], "image9": row["image9"], "image10": row["image10"], "image11": row["image11"], "source": row["source"], "self": row["self"]} def departmentize_db(db): departments = {} for row in db: dept = row["department"] if not dept in departments: departments[dept] = [] departments[dept].append(row) return departments