def create_library(cursor, row): _row = sqlite3.Row(cursor, row) library = Library() library.id = _row["id"] library.title = _row["title"] library.address = _row["address"] # Note: You are adding a blank books list to the library object # This list will be populated later (see below) library.books = [] book = Book() book.id = _row["book_id"] book.title = _row["book_title"] book.author = _row["author"] book.isbn_number = _row["isbn_number"] book.year_published = _row["year_published"] # Return a tuple containing the library and the # book built from the data in the current row of # the data set return ( library, book, )
def book_list(request): if request.method == 'GET': with sqlite3.connect(Connection.db_path) as conn: conn.row_factory = sqlite3.Row db_cursor = conn.cursor() db_cursor.execute(""" select b.id, b.title, b.isbn_number, b.author, b.year_published, b.librarian_id, b.location_id from libraryapp_book b """) all_books = [] dataset = db_cursor.fetchall() for row in dataset: book = Book() book.id = row['id'] book.title = row['title'] book.isbn_number = row['isbn_number'] book.author = row['author'] book.year_published = row['year_published'] book.librarian_id = row['librarian_id'] book.location_id = row['location_id'] all_books.append(book) template = 'books/list.html' context = { 'all_books': all_books } return render(request, template, context) elif request.method == 'POST': form_data = request.POST with sqlite3.connect(Connection.db_path) as conn: db_cursor = conn.cursor() db_cursor.execute(""" INSERT INTO libraryapp_book ( title, author, isbn_number, year_published, location_id, librarian_id ) VALUES (?, ?, ?, ?, ?, ?) """, (form_data['title'], form_data['author'], form_data['isbn_number'], form_data['year_published'], request.user.librarian.id, form_data["location"])) return redirect(reverse('libraryapp:books'))
def create_library(cursor, row): _row = sqlite3.Row(cursor, row) library = Library() library.id = _row["id"] library.title = _row["title"] library.address = _row["address"] library.books = [] book = Book() book.id = _row["id"] book.title = _row["book_title"] book.author = _row["author"] book.isbn_number = _row["isbn_number"] book.year = _row["year"] return ( library, book, )
def create_book(cursor, row): _row = sqlite3.Row(cursor, row) book = Book() book.id = _row["book_id"] book.author = _row["author"] book.isbn_number = _row["isbn_number"] book.title = _row["title"] book.year_published = _row["year_published"] librarian = Librarian() librarian.id = _row["librarian_id"] librarian.first_name = _row["first_name"] librarian.last_name = _row["last_name"] library = Library() library.id = _row["library_id"] library.title = _row["library_name"] book.librarian = librarian book.location = library return book
def book_list(request): if request.method == 'GET': with sqlite3.connect(Connection.db_path) as conn: conn.row_factory = sqlite3.Row db_cursor = conn.cursor() db_cursor.execute(""" select b.id, b.title, b.isbn_number, b.author, b.year_published, b.librarian_id, b.location_id from libraryapp_book b """) all_books = [] dataset = db_cursor.fetchall() for row in dataset: book = Book() book.id = row['id'] book.title = row['title'] book.isbn_number = row['isbn_number'] book.author = row['author'] book.year_published = row['year_published'] book.librarian_id = row['librarian_id'] book.location_id = row['location_id'] all_books.append(book) template = 'books/list.html' context = {'all_books': all_books} return render(request, template, context)