Free Sample
+ Collection

Learning Website Development with Django

Ayman Hourieh

A beginner's tutorial to building web applications, quickly and cleanly, with the Django application framework
RRP $23.99
RRP $39.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781847193353
Paperback264 pages

About This Book

  • Create a complete Web 2.0-style web application with Django
  • Learn rapid development and clean, pragmatic design
  • Build a social bookmarking application
  • No knowledge of Django required

Who This Book Is For

This book is for web developers who want to see how to build a complete site with Web 2.0 features, using the power of a proven and popular development system, but do not necessarily want to learn how a complete framework functions in order to do this.

Basic knowledge of Python development is required for this book, but no knowledge of Django is expected.

Table of Contents

Chapter 1: Introduction to Django
The MVC Pattern in Web Development
Why Python?
Why Django?
History of Django
Chapter 2: Getting Started
Installing the Required Software
Creating Your First Project
Chapter 3: Building a Social Bookmarking Application
A Word about Django Terminology
URLs and Views: Creating the Main Page
Models: Designing an Initial Database Schema
Templates: Creating a Template for the Main Page
Putting It All Together: Generating User Pages
Chapter 4: User Registration and Management
Session Authentication
Improving Template Structure
User Registration
Account Management
Chapter 5: Introducing Tags
The Tag Data Model
Creating the Bookmark Submission Form
A Word on Security
Chapter 6: Enhancing the User Interface with Ajax
Ajax and Its Advantages
Using an Ajax Framework in Django
The jQuery JavaScript Framework
Implementing Live Searching of Bookmarks
Editing Bookmarks in Place
Auto-Completion of Tags
Chapter 7: Voting and Commenting
Sharing Bookmarks on the Main Page
Commenting on Bookmarks
Chapter 8: Creating an Administration Interface
Activating the Administration Interface
Customizing the Administration Interface
Users, Groups and Permissions
Chapter 9: Advanced Browsing and Searching
Adding RSS Feeds
Advanced Searching
Organizing Content into Pages (Pagination)
Chapter 10: Building User Networks
Building Friend Networks
Inviting Friends Via Email
Improving the Interface with Messages
Chapter 11: Extending and Deploying
Internationalization (i18n)
Improving Performance with Caching
Unit Testing
Deploying Django
Chapter 12: What Next?
Custom Template Tags and Filters
Model Managers and Custom SQL
Generic Views
Contributed Sub-Frameworks
Message System
Subscription System
User Scores

What You Will Learn

  • User registration and management
  • Dealing with content customization and searching
  • Working with the tag data model
  • Creating your own administration interface
  • Using AJAX to enhance the user interface
  • Building user networks
  • Setting up and deploying Django applications on the production web server

Chapter 1 gives you an introduction to MVC web development frameworks, a history of Django, and explains why Python and Django are the best tools to use to achieve the aim of this book.

Chapter 2 provides a step-by-step guide to installing Python, Django, and an appropriate database system so that you can create an empty project and set up the development server.

Chapter 3 creates the main page so that we have the initial view and a URL. You will learn how to create templates for both the main page and the user page.

Chapter 4 is where the application really starts to take shape as user management is implemented. Learn how to log users in and out, create a registration form and allow users to manage their own accounts by changing email or password details.

Chapter 5 explores how to manage your growing bank of content. Create tags, tag clouds, and a bookmark submission form all of which interact with your database. Security features also come into play as you learn how to restrict access to certain pages and protect against malicious input.

Chapter 6 enables you to enhance your application with AJAX and jQuery as users can now edit entries in place and do live searching. Data entry is also made easier with the introduction of auto-completion.

Chapter 7 shows you how to enable users to vote and comment on their bookmark entries.

Chapter 8 focuses on the administration interface. You will learn how to create and customize the interface, which allows you to manage content and to set permissions for users and groups.

Chapter 9 will give your application a much more professional feel through the implementation of RSS feeds and pagination.

Chapter 10 tackles social networks providing the 'social' element of your application. Users will be able to build a friend network, browse the bookmarks of their friends, and invite their friends to join the website.

Chapter 11 covers extending and deploying your application. You will also learn about advanced features including offering the site in multiple languages, managing the site during high traffic, and configuring the site for a production environment.

Chapter 12 takes a brief look at extra Django features that have not been covered elsewhere in the book. You will gain the knowledge required to further your application and build on the basic skills that you have learned throughout the book.

In Detail

Django is a high-level Python web framework that was developed by a fast-moving online-news operation to meet the stringent twin challenges of newsroom deadlines and the needs of web developers. It is designed to promote rapid development and clean, pragmatic design and lets you build high-performing, elegant web applications rapidly. Django focuses on automating as much as possible and adhering to the DRY (Don't Repeat Yourself) principle, making it easier to build high-performance web applications faster, with less code.

This book will show you how to assemble Django's features and leverage its power to design, develop, and deploy a fully-featured website. It will walk you through the creation of an example web application, with lots of code. Each chapter will add new features to the site, and show what parts of Django to work on to build these features.

This book has been specifically written for Python developers new to Django, and it's goal is to help you put together Django applications as quickly as possible. This book will give you clear, concise and, of course, practical guidance to take you from the basics of creating pages with Django through to learning the skills that will make you a Django developer to be reckoned with.


Read More

Recommended for You

Web Development with Django Cookbook
$ 29.99
Django Essentials
$ 13.99
Instant Django 1.5 Application Development Starter
$ 12.99
Django JavaScript Integration: AJAX and jQuery
$ 26.99