Now that we initialized our database schema, the next step is to start creating entries that will later populate the database. The beauty of SQLAlchemy Object Relational Mapper (ORM) is that our database entries are simply created as instances of Python classes representing the declared models.

We will create our objects in a separate file called create_objects.py. To create objects representing model entries, we first need to import the models from the app.py file:

from app import Reader, Book, Review

We can create an object of class Book in the following way:

b1 = Book(id = 123, title = 'Demian', author_name = 'Hermann', author_surname = 'Hesse', month = "February", year = 2020)

An example object of class Reader could be:

r1 = Reader(id = 342, name = 'Ann', surname = 'Adams', email = '[email protected]')

Thanks to the ORM, creating database entries is the same as creating Python objects.

We interact with database entries in the way we interact with Python objects. In case we want to access a specific attribute or column, we do it in the same way we would access attributes of Python objects: by using . (dot) notation:

print("My first reader:", r1.name) # prints My first reader: Ann



In file create_objects.py, create an instance of Book called b2 with id 533, titled ‘The Stranger’ written by Albert Camus suggested for month April in year 2019.


In file create_objects.py, create an instance of Reader called variable r2 representing a reader with id number 765, called Sam Adams with e-mail [email protected].


Print the author surname for book instance b2.


Print the length of the e-mail for Reader r2.

Sign up to start coding

Mini Info Outline Icon
By signing up for Codecademy, you agree to Codecademy's Terms of Service & Privacy Policy.

Or sign up using:

Already have an account?