● Developer since 1998
● PHP, ASP, ASP.NET, Rails
About Me
Slide 5
Slide 5 text
● Developer since 1998
● PHP, ASP, ASP.NET, Rails
● Python since 2005 (2.3)
About Me
Slide 6
Slide 6 text
● Developer since 1998
● PHP, ASP, ASP.NET, Rails
● Python since 2005 (2.3)
● Django since 2007 (0.96)
About Me
Slide 7
Slide 7 text
● Developer since 1998
● PHP, ASP, ASP.NET, Rails
● Python since 2005 (2.3)
● Django since 2007 (0.96)
● Currently Fairfax Media (Django at scale)
About Me
Slide 8
Slide 8 text
Django Forms
Slide 9
Slide 9 text
● Beautiful API
Django Forms
Slide 10
Slide 10 text
Django Forms
Slide 11
Slide 11 text
● Beautiful API
● But fixed in nature
Django Forms
Slide 12
Slide 12 text
Scenario - Competitions
Slide 13
Slide 13 text
● Capture age and favourite colour
Scenario - Competitions
Slide 14
Slide 14 text
Scenario - Competitions
Slide 15
Slide 15 text
● Capture age and favourite colour
● Capture file upload and 25 words
Scenario - Competitions
Slide 16
Slide 16 text
Scenario - Competitions
Slide 17
Slide 17 text
Scenario - Competitions
Slide 18
Slide 18 text
● Capture age and favourite colour
● Capture file upload and 25 words
● Now we want each response emailed
Scenario - Competitions
Slide 19
Slide 19 text
● Capture age and favourite colour
● Capture file upload and 25 words
● Now we want each response emailed
● Wait, too many emails - just CSV me
Scenario - Competitions
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
django-forms-builder
Let staff build their own damn forms
Slide 22
Slide 22 text
What's a Form?
Slide 23
Slide 23 text
● Title
What's a Form?
Slide 24
Slide 24 text
● Title
● Intro text
What's a Form?
Slide 25
Slide 25 text
● Title
● Intro text
● Response text
What's a Form?
Slide 26
Slide 26 text
● Title
● Intro text
● Response text
● Email recipients
What's a Form?
Slide 27
Slide 27 text
What's a Field?
Slide 28
Slide 28 text
● Name
What's a Field?
Slide 29
Slide 29 text
● Name
● Type
What's a Field?
Slide 30
Slide 30 text
● Name
● Type
● Default value
What's a Field?
Slide 31
Slide 31 text
● Name
● Type
● Default value
● Mandatory
What's a Field?
Slide 32
Slide 32 text
● Name
● Type
● Default value
● Mandatory
● Help text
What's a Field?
Slide 33
Slide 33 text
● Name
● Type
● Default value
● Mandatory
● Help text
● Options
What's a Field?
Slide 34
Slide 34 text
Demo Time
Slide 35
Slide 35 text
Advanced Features
Slide 36
Slide 36 text
● Export formats (HTML, CSV, XLS)
Advanced Features