Slide 1

Slide 1 text

Getting Started With Beshr Kayali Friday, May 4, 12

Slide 2

Slide 2 text

Why Django? and a little bit of history Friday, May 4, 12

Slide 3

Slide 3 text

Newsroom Environment 1 Friday, May 4, 12

Slide 4

Slide 4 text

Experienced Web Developers 2 Friday, May 4, 12

Slide 5

Slide 5 text

Python Programming Language Friday, May 4, 12

Slide 6

Slide 6 text

Python Programming Language Friday, May 4, 12

Slide 7

Slide 7 text

The Zen of Python import this Friday, May 4, 12

Slide 8

Slide 8 text

Introduction to Python A Quick Friday, May 4, 12

Slide 9

Slide 9 text

Introduction to Python • Beautiful, clean-looking syntax A Quick Friday, May 4, 12

Slide 10

Slide 10 text

Introduction to Python • Beautiful, clean-looking syntax • Built-in high-level data types: strings, lists, dictionaries, etc. A Quick Friday, May 4, 12

Slide 11

Slide 11 text

Introduction to Python • Beautiful, clean-looking syntax • Built-in high-level data types: strings, lists, dictionaries, etc. • Organizational structure: functions, classes, modules, and packages A Quick Friday, May 4, 12

Slide 12

Slide 12 text

Introduction to Python • Beautiful, clean-looking syntax • Built-in high-level data types: strings, lists, dictionaries, etc. • Organizational structure: functions, classes, modules, and packages • Compile on the fly to byte code A Quick Friday, May 4, 12

Slide 13

Slide 13 text

Introduction to Python • Beautiful, clean-looking syntax • Built-in high-level data types: strings, lists, dictionaries, etc. • Organizational structure: functions, classes, modules, and packages • Compile on the fly to byte code • Extensions in C & C++ A Quick Friday, May 4, 12

Slide 14

Slide 14 text

A Django Project Friday, May 4, 12

Slide 15

Slide 15 text

A Django Project Model-view-controller (MVC) Friday, May 4, 12

Slide 16

Slide 16 text

A Django Project Model Model-view-controller (MVC) Friday, May 4, 12

Slide 17

Slide 17 text

A Django Project Model View Model-view-controller (MVC) Friday, May 4, 12

Slide 18

Slide 18 text

A Django Project Model View Controller Model-view-controller (MVC) Friday, May 4, 12

Slide 19

Slide 19 text

A Django Project Model View Controller Model-view-controller (MVC) Friday, May 4, 12

Slide 20

Slide 20 text

A Django Project Friday, May 4, 12

Slide 21

Slide 21 text

A Django Project Translated into Django Friday, May 4, 12

Slide 22

Slide 22 text

A Django Project Translated into Django Model Friday, May 4, 12

Slide 23

Slide 23 text

A Django Project Translated into Django Model Controller Friday, May 4, 12

Slide 24

Slide 24 text

A Django Project Translated into Django Model Controller View Friday, May 4, 12

Slide 25

Slide 25 text

A Django Project Translated into Django Model Controller View Friday, May 4, 12

Slide 26

Slide 26 text

A Django Project Translated into Django Model Controller View models.py Friday, May 4, 12

Slide 27

Slide 27 text

A Django Project Translated into Django Model Controller View urls.py models.py Friday, May 4, 12

Slide 28

Slide 28 text

A Django Project Translated into Django Model Controller View views.py urls.py models.py Friday, May 4, 12

Slide 29

Slide 29 text

A Django Project Translated into Django Model Controller View templates/ views.py urls.py models.py Friday, May 4, 12

Slide 30

Slide 30 text

A Django Project Friday, May 4, 12

Slide 31

Slide 31 text

A Django Project Apps Friday, May 4, 12

Slide 32

Slide 32 text

A Django Project Apps Model Controller View Friday, May 4, 12

Slide 33

Slide 33 text

A Django Project Apps Model Controller View templates/ views.py urls.py models.py Friday, May 4, 12

Slide 34

Slide 34 text

A Django Project Apps Model Controller View templates/ views.py urls.py models.py App Friday, May 4, 12

Slide 35

Slide 35 text

A Django Project Apps Model Controller View templates/ views.py urls.py models.py App templates/ views.py urls.py models.py App Friday, May 4, 12

Slide 36

Slide 36 text

A Django Project Apps Model Controller View templates/ views.py urls.py models.py App templates/ views.py urls.py models.py App templates/ views.py urls.py models.py App Friday, May 4, 12

Slide 37

Slide 37 text

What does that actually look like? Friday, May 4, 12

Slide 38

Slide 38 text

Django Apps (Packages) Friday, May 4, 12

Slide 39

Slide 39 text

Django Apps (Packages) • Pluggable, reusable, replaceable, removable Friday, May 4, 12

Slide 40

Slide 40 text

Django Apps (Packages) • Pluggable, reusable, replaceable, removable • Powered by the community (Github, Bitbucket, Google Code) Friday, May 4, 12

Slide 41

Slide 41 text

Django Apps (Packages) • Pluggable, reusable, replaceable, removable • Powered by the community (Github, Bitbucket, Google Code) • Django Packages http://djangopackages.com Friday, May 4, 12

Slide 42

Slide 42 text

Django Apps (Packages) • Pluggable, reusable, replaceable, removable • Powered by the community (Github, Bitbucket, Google Code) • Django Packages http://djangopackages.com • Rating/Comments/Tutorials Friday, May 4, 12

Slide 43

Slide 43 text

Django Apps (Packages) • Pluggable, reusable, replaceable, removable • Powered by the community (Github, Bitbucket, Google Code) • Django Packages http://djangopackages.com • Rating/Comments/Tutorials • Pinax! Friday, May 4, 12

Slide 44

Slide 44 text

Friday, May 4, 12

Slide 45

Slide 45 text

Friday, May 4, 12

Slide 46

Slide 46 text

Open-Source Platform Built on Django Friday, May 4, 12

Slide 47

Slide 47 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application Friday, May 4, 12

Slide 48

Slide 48 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app Friday, May 4, 12

Slide 49

Slide 49 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax Friday, May 4, 12

Slide 50

Slide 50 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow Friday, May 4, 12

Slide 51

Slide 51 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs Friday, May 4, 12

Slide 52

Slide 52 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion Friday, May 4, 12

Slide 53

Slide 53 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion dialogos Friday, May 4, 12

Slide 54

Slide 54 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion dialogos phileo Friday, May 4, 12

Slide 55

Slide 55 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion dialogos phileo kaleo Friday, May 4, 12

Slide 56

Slide 56 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion dialogos django-friends phileo kaleo Friday, May 4, 12

Slide 57

Slide 57 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion dialogos django-friends django-friends phileo kaleo Friday, May 4, 12

Slide 58

Slide 58 text

Open-Source Platform Built on Django agon a reusable Django points, positions and levels application agon-ratings a ratings app agora an extensible forum app for Django and Pinax aiteo a question and answer app ala StackOverflow biblion the eldarion.com blog app intended to be suitable for site- level company and project blogs brabeion dialogos django-friends django-friends pinax-shop phileo kaleo Friday, May 4, 12

Slide 59

Slide 59 text

Friday, May 4, 12

Slide 60

Slide 60 text

Overwhelmed? Friday, May 4, 12

Slide 61

Slide 61 text

Overwhelmed? Luckily, you don't have to go through all of this at the beginning! Friday, May 4, 12

Slide 62

Slide 62 text

Batteries Included Friday, May 4, 12

Slide 63

Slide 63 text

Batteries Included Admin Interface Friday, May 4, 12

Slide 64

Slide 64 text

Batteries Included Friday, May 4, 12

Slide 65

Slide 65 text

Batteries Included Databrowser Friday, May 4, 12

Slide 66

Slide 66 text

Batteries Included Friday, May 4, 12

Slide 67

Slide 67 text

Batteries Included Authentication Friday, May 4, 12

Slide 68

Slide 68 text

Batteries Included Friday, May 4, 12

Slide 69

Slide 69 text

Batteries Included Flatpages Friday, May 4, 12

Slide 70

Slide 70 text

Batteries Included Friday, May 4, 12

Slide 71

Slide 71 text

Batteries Included GeoDjango Friday, May 4, 12

Slide 72

Slide 72 text

Batteries Included Friday, May 4, 12

Slide 73

Slide 73 text

Batteries Included Internationalization Friday, May 4, 12

Slide 74

Slide 74 text

Batteries Included Friday, May 4, 12

Slide 75

Slide 75 text

Batteries Included Messages Friday, May 4, 12

Slide 76

Slide 76 text

Batteries Included Friday, May 4, 12

Slide 77

Slide 77 text

A Django Project The Structure Friday, May 4, 12

Slide 78

Slide 78 text

my_site/ A Django Project The Structure Friday, May 4, 12

Slide 79

Slide 79 text

my_site/ __init__.py A Django Project The Structure Friday, May 4, 12

Slide 80

Slide 80 text

my_site/ __init__.py manage.py A Django Project The Structure Friday, May 4, 12

Slide 81

Slide 81 text

my_site/ __init__.py manage.py urls.py A Django Project The Structure Friday, May 4, 12

Slide 82

Slide 82 text

my_site/ __init__.py manage.py urls.py settings.py A Django Project The Structure Friday, May 4, 12

Slide 83

Slide 83 text

my_site/ __init__.py manage.py urls.py settings.py my_app/ A Django Project The Structure Friday, May 4, 12

Slide 84

Slide 84 text

my_site/ __init__.py manage.py urls.py settings.py my_app/ models.py A Django Project The Structure Friday, May 4, 12

Slide 85

Slide 85 text

my_site/ __init__.py manage.py urls.py settings.py my_app/ models.py views.py A Django Project The Structure Friday, May 4, 12

Slide 86

Slide 86 text

my_site/ __init__.py manage.py urls.py settings.py my_app/ models.py views.py admin.py A Django Project The Structure Friday, May 4, 12

Slide 87

Slide 87 text

The Example An Online Bookstore! Friday, May 4, 12

Slide 88

Slide 88 text

Online Bookstore The Models Friday, May 4, 12

Slide 89

Slide 89 text

Online Bookstore The Models Author Friday, May 4, 12

Slide 90

Slide 90 text

Online Bookstore The Models Author Book Book Book Book Friday, May 4, 12

Slide 91

Slide 91 text

Online Bookstore The Models Author Book Book Book Book Author Friday, May 4, 12

Slide 92

Slide 92 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author Friday, May 4, 12

Slide 93

Slide 93 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author CharField URLField TextField Friday, May 4, 12

Slide 94

Slide 94 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author ForeignKey CharField URLField TextField Friday, May 4, 12

Slide 95

Slide 95 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author ForeignKey CharField URLField TextField Category Friday, May 4, 12

Slide 96

Slide 96 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author ForeignKey CharField URLField TextField Name Description Domain Category Friday, May 4, 12

Slide 97

Slide 97 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author ForeignKey CharField URLField TextField Name Description Domain Category CharField TextField Friday, May 4, 12

Slide 98

Slide 98 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author ForeignKey CharField URLField TextField Name Description Domain Category CharField TextField IntegerField Friday, May 4, 12

Slide 99

Slide 99 text

Online Bookstore The Models Author Title Category Cover Description Book Book Book Book Author ForeignKey CharField URLField TextField Name Description Domain Category CharField TextField IntegerField DOMAIN_CHOICES = ((1, ‘Entertainment’) (2, ‘Fiction’), (3, ‘History’), (4, ‘Business & Finance’), (5, ‘Special Interest’)) Friday, May 4, 12

Slide 100

Slide 100 text

Online Bookstore The Models Friday, May 4, 12

Slide 101

Slide 101 text

Online Bookstore The Models Let’s see the code! Friday, May 4, 12

Slide 102

Slide 102 text

Online Bookstore The Models Friday, May 4, 12

Slide 103

Slide 103 text

Online Bookstore The Models Sync my DB for me please, Friday, May 4, 12

Slide 104

Slide 104 text

Online Bookstore The Models Friday, May 4, 12

Slide 105

Slide 105 text

Online Bookstore The Models and create my admin :) Friday, May 4, 12

Slide 106

Slide 106 text

Online Bookstore The Models Friday, May 4, 12

Slide 107

Slide 107 text

Online Bookstore The Views Friday, May 4, 12

Slide 108

Slide 108 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Friday, May 4, 12

Slide 109

Slide 109 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Django Friday, May 4, 12

Slide 110

Slide 110 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Django Friday, May 4, 12

Slide 111

Slide 111 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Django Domain View Category View Friday, May 4, 12

Slide 112

Slide 112 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Book View Django Domain View Category View Friday, May 4, 12

Slide 113

Slide 113 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Book View Django Domain View Category View Author View Friday, May 4, 12

Slide 114

Slide 114 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Book View Django Domain View Category View Author View Search View Friday, May 4, 12

Slide 115

Slide 115 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Book View Django User Interface Domain View Category View Author View Search View Friday, May 4, 12

Slide 116

Slide 116 text

Online Bookstore The Views CRUD (Create, Read, Update, Delete) Admin Interface Homepage View Book View Django User Interface Us Domain View Category View Author View Search View Friday, May 4, 12

Slide 117

Slide 117 text

Online Bookstore The Views Friday, May 4, 12

Slide 118

Slide 118 text

Online Bookstore The Views Let’s see the code! Friday, May 4, 12

Slide 119

Slide 119 text

Online Bookstore The Views Friday, May 4, 12

Slide 120

Slide 120 text

Online Bookstore The Templates Friday, May 4, 12

Slide 121

Slide 121 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Friday, May 4, 12

Slide 122

Slide 122 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Django Friday, May 4, 12

Slide 123

Slide 123 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Django Friday, May 4, 12

Slide 124

Slide 124 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Django Domain Template Category Template Friday, May 4, 12

Slide 125

Slide 125 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Book Template Django Domain Template Category Template Friday, May 4, 12

Slide 126

Slide 126 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Book Template Django Domain Template Category Template Author Template Friday, May 4, 12

Slide 127

Slide 127 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Book Template Django Domain Template Category Template Author Template Search Results Template Friday, May 4, 12

Slide 128

Slide 128 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Book Template Django User Interface Domain Template Category Template Author Template Search Results Template Friday, May 4, 12

Slide 129

Slide 129 text

Online Bookstore The Templates CRUD Forms (Create, Read, Update, Delete) Admin Interface Homepage Template Book Template Django User Interface Us Domain Template Category Template Author Template Search Results Template Friday, May 4, 12

Slide 130

Slide 130 text

Online Bookstore The Templates Friday, May 4, 12

Slide 131

Slide 131 text

Online Bookstore The Templates base.html {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 132

Slide 132 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 133

Slide 133 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 134

Slide 134 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Homepage Friday, May 4, 12

Slide 135

Slide 135 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 136

Slide 136 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Category: {{name}} Friday, May 4, 12

Slide 137

Slide 137 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 138

Slide 138 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Book: {{title}} Friday, May 4, 12

Slide 139

Slide 139 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 140

Slide 140 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff Friday, May 4, 12

Slide 141

Slide 141 text

Online Bookstore The Templates {% block pagetitle %}{% endblock %} # page header stuff
{% block pagecontent %} {% endblock %}
# page footer stuff #html_code Friday, May 4, 12

Slide 142

Slide 142 text

Online Bookstore The Templates Friday, May 4, 12

Slide 143

Slide 143 text

Online Bookstore The Templates Let’s see the code! Friday, May 4, 12

Slide 144

Slide 144 text

Online Bookstore The Templates Friday, May 4, 12

Slide 145

Slide 145 text

Online Bookstore The URLs Friday, May 4, 12

Slide 146

Slide 146 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Friday, May 4, 12

Slide 147

Slide 147 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Django Friday, May 4, 12

Slide 148

Slide 148 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Django Friday, May 4, 12

Slide 149

Slide 149 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Django Domain URL Category URL Friday, May 4, 12

Slide 150

Slide 150 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Book URL Django Domain URL Category URL Friday, May 4, 12

Slide 151

Slide 151 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Book URL Django Domain URL Category URL Author URL Friday, May 4, 12

Slide 152

Slide 152 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Book URL Django Domain URL Category URL Author URL Search URL Friday, May 4, 12

Slide 153

Slide 153 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Book URL Django User Interface Domain URL Category URL Author URL Search URL Friday, May 4, 12

Slide 154

Slide 154 text

Online Bookstore The URLs CRUD (Create, Read, Update, Delete) Admin Interface Homepage URL Book URL Django User Interface Us Domain URL Category URL Author URL Search URL Friday, May 4, 12

Slide 155

Slide 155 text

Code Friday, May 4, 12

Slide 156

Slide 156 text

Friday, May 4, 12

Slide 157

Slide 157 text

Images Used http://www.flickr.com/photos/14057191@N07/6412684613/ http://www.flickr.com/photos/redandjonny/2465706599/lightbox/ http://en.wikipedia.org/wiki/Newsroom http://www.flickr.com/photos/22339026@N00/129691678/ http://www.flickr.com/photos/89937132@N00/3811341189/ http://www.flickr.com/photos/11266609@N00/2561390195/ http://www.flickr.com/photos/94525703@N00/4247744344/ Friday, May 4, 12