from bam import db, bcrypt from bam.models import User, Book def main(): # Create databases db.create_all() if input("Populate db with test data? [Y/n] ").lower == "n": return users = [ ["bookmaster", "bookmaster@example.com", "masterofbooks", "user"], ["root", "root@example.com", "toor", "admin"], ["Jake", "jake@example.com", "justin", "user"], ["Anuj", "anuj@example.com", "youcan'tguessme", "admin"], ] books = [ ["Harry Potter", "JK Rowling", None, "400", 3], ["Lord of the Rings", "JRR Tolkien", None, "700.50", 2], ["Artemis Fowl", "Eoin Colfer", None, "356", 1], ["Percy Jackson", "Rick Riordan", None, "499", 3], ["The Thief Lord", "Cornelia Funke", None, "375.25", 1], ["Sherlock Holmes", "Arthur Conan Doyle", None, "800", 3], ] for username, email, passwd, role in users: db.session.add( User( username=username, email=email, password=bcrypt.generate_password_hash(passwd).decode("utf-8"), role=role, ) ) for title, author, isbn, price, user_id in books: db.session.add( Book(title=title, author=author, isbn=isbn, price=price, user_id=user_id) ) db.session.commit() if __name__ == "__main__": main()