17281
17281
com
https://ebookname.com/product/python-3-web-development-
beginner-s-guide-anders/
OR CLICK HERE
DOWLOAD NOW
https://ebookname.com/product/python-testing-beginner-s-guide-1st-
edition-daniel-arbuckle/
ebookname.com
https://ebookname.com/product/phonegap-3-beginner-s-guide-2nd-edition-
giorgio-natili/
ebookname.com
https://ebookname.com/product/fastapi-modern-python-web-
development-1st-edition-bill-lubanovic/
ebookname.com
https://ebookname.com/product/encyclopedia-of-american-industries-
manufacturing-industries-4th-edition-lynn-m-pearce/
ebookname.com
Essential concepts for healthy living 7th Edition Edition
Alters
https://ebookname.com/product/essential-concepts-for-healthy-
living-7th-edition-edition-alters/
ebookname.com
https://ebookname.com/product/comparative-government-and-politics-6th-
edition-comparative-government-polit-rod-hague/
ebookname.com
https://ebookname.com/product/sleight-of-mouth-volume-ii-how-words-
can-change-worlds-1st-edition-robert-brian-dilts/
ebookname.com
https://ebookname.com/product/badd-boy-the-badd-brothers-book-8-1st-
edition-jasinda-wilder/
ebookname.com
https://ebookname.com/product/public-relations-for-dummies-2nd-ed-
edition-eric-yaverbaum/
ebookname.com
Static Government Liars Media Cheerleaders and the People
Who Fight Back First Edition Goodman
https://ebookname.com/product/static-government-liars-media-
cheerleaders-and-the-people-who-fight-back-first-edition-goodman/
ebookname.com
Python 3 Web Development
Beginner's Guide
Michel Anders
BIRMINGHAM - MUMBAI
Python 3 Web Development
Beginner's Guide
All rights reserved. No part of this book may be reproduced, stored in a retrieval system,
or transmitted in any form or by any means, without the prior written permission of the
publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the
information presented. However, the information contained in this book is sold without
warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers
and distributors will be held liable for any damages caused or alleged to be caused directly or
indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals. However,
Packt Publishing cannot guarantee the accuracy of this information.
ISBN 978-1-849513-74-6
www.packtpub.com
Copy Editor
Leonard D'Silva
About the Author
Michel Anders, after his chemistry and physics studies where he spent more time on
computer simulations than on real world experiments, the author found his real interests
lay with IT and Internet technology, and worked as an IT manager for several different
companies, including an Internet provider, a hospital, and a software development company.
After his initial exposure to Python as the built-in scripting language of Blender, the popular
3D modeling and rendering suite, the language became his tool of choice for many projects.
He lives happily in a small converted farm, with his partner, three cats, and twelve goats.
This tranquil environment proved to be ideally suited to writing his first book, Blender 2.49
Scripting (Packt Publishing, 978-1-849510-40-0).
He loves to help people with Blender and Python-related questions and may be contacted as
'varkenvarken' at http://www.blenderartists.org/ and maintains a blog on Python-
specific subjects at http://michelanders.blogspot.com/.
Michael Driscoll has been programming Python since the Spring of 2006 and has
dabbled in other languages since the late nineties. He graduated from the University with
a Bachelors of Science degree, majoring in Management Information Systems. Michael
enjoys programming for fun and profit. His hobbies include Biblical apologetics, blogging
about Python at http://www.blog.pythonlibrary.org/, and learning photography.
Michael currently works for the local government, where he does programming with Python
as much as possible. Michael was also a Technical Reviewer for Python 3: Object Oriented
Programming by Dusty Phillips and Python Graphics Cookbook by Mike Ohlson de Fine (both
by Packt Publishing).
I would like to thank my friends and family for their support and the fun
times they share with me. Most of all, I want to thank Jesus for saving me
from myself.
Róman Joost discovered open source software in 1997. He is the project manager for
user documentation for GNU Image Manipulation Program (GIMP). Róman also helped with
German internationalization of GIMP. He has been contributing to GIMP and Zope open
source projects for eight years.
Róman has a Diplom-Informatiker (FH) from the University of Applied Sciences in Koethen
(Anhalt). He has worked for Zope companies—Gocept GmbH & Co in Germany, Infrae in
The Netherlands, and is currently working for a Zope company in Brisbane, Australia. For
relaxation, he enjoys photography and digital painting with GIMP.
Tomi Juhola is a software development professional from Finland. He has a wide range of
development experience from embedded systems to modern distributed enterprise systems
in various roles such as tester, developer, consultant, and trainer.
Currently, he works in a financial company and shares this time between development lead
duties and helping other projects to adopt Scrum and Agile methodologies. He likes to spend
his free time with new interesting development languages and frameworks.
He has reviewed conference proposals, a Python development book, and has also published
his own Master's theses on Agile embedded development.
Nicholson has a B.Eng (Computer) [Honours 1] from Newcastle University, Australia and a
M.Eng (Wireless) with Merit from Sydney University, Australia.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub
files available? You can upgrade to the eBook version at www.PacktPub.com and as a print
book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
[email protected] for more details.
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a
range of free newsletters, and receive exclusive discounts and offers on Packt books and eBooks.
http://PacktLib.PacktPub.com
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book
library. Here, you can access, read and search across Packt's entire library of books.
Why Subscribe?
Fully searchable across every book published by Packt
Copy and paste, print and bookmark content
On demand and accessible via web browser
[ ii ]
Table of Contents
CSS: tasklist.css 87
Summary 90
Chapter 4: Tasklist II: Databases and AJAX 91
The advantages of a database compared to a filesystem 92
Choosing a database engine 92
Database-driven authentication 93
Time for action – authentication using a database 94
Tasklist II – storing tasks in a database 99
Improving interactivity with AJAX 99
Time for action – getting the time with AJAX 100
Redesigning the Tasklist application 102
Database design 103
Time for action – creating the task database 103
Time for action – retrieving information with select statements 105
TaskDB – interfacing with the database 106
Time for action – connecting to the database 106
Time for action – storing and retrieving information 107
Time for action – updating and deleting information 109
Testing 111
Time for action – testing factorial.py 112
Now what have we gained? 113
Time for action – writing unit tests for tasklistdb.py 114
Designing for AJAX 116
Click handlers 120
The application 121
Time for action – putting it all together 123
Have a go hero – refreshing the itemlist on a regular basis 125
Summary 126
Chapter 5: Entities and Relations 127
Designing a book database 127
The Entity class 128
Time for action – using the Entity class 129
Time for action – creating instances 132
The Relation class 138
Time for action – using the Relation class 138
Relation instances 141
Time for action – defining the Books database 144
The delivery layer 150
Time for action – designing the delivery layer 151
Time for action – adding a new book 162
[ iii ]
Table of Contents
CHAPTER I.
CANONS OF CRITICISM.
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebookname.com