Pinax Tutorial 09/09/09

Daniel Greenfeld
Daniel GreenfeldSoftware Developer at Cartwheel LLC
Pinax Tutorial

Building a flash mob dance
       organizer site
Who are we?

James Tauber                     Daniel Greenfeld

Pinax founder                    Pinax Core Developer

Discoverer of the D^Jango Code   NASA contractor
Tutorial Prerequisites

1. Basic understanding of Django
2. Basic understanding of Python
Flash mob dance site requirements
Flash mob dance site requirements

 Lets us organize big flash mob dance events
Flash mob dance site requirements

 Lets us organize big flash mob dance events

 We want groups so people can participate in dances
Flash mob dance site requirements

 Lets us organize big flash mob dance events

 We want groups so people can participate in dances

 Need to have twitter clone so we can communicate locally
 without giving it away to everyone. We want updates inside
 dances.
What is Pinax?
What is Pinax?

Django with an opinion
What is Pinax?

Django with an opinion

By integrating numerous reusable Django apps to take care of
the things that many sites have in common, it lets you focus on
what makes your site different.
What is Pinax?

Django with an opinion

By integrating numerous reusable Django apps to take care of
the things that many sites have in common, it lets you focus on
what makes your site different.

from magic import pony
import pinax

@pinax
def django(ideas):
 return pony.magic(ideas)
Step 1: Install Pinax

   Taunting the demo gods

 http://downloads.pinaxproject.
com/Pinax-0.7rc1-bundle.tar.gz
Virtualenv sidestep


  Authored by Ian Bicking


  Lets you pin releases in a safe, homogeneous environment
Step 2: Create our project

           pinax-admin clone_project -l

pinax-admin clone_project basic_project flash_dance
Flash Mob Project
Flash Mob Project

Hey, its just a Django project!
Flash Mob Project

Hey, its just a Django project!

What apps do we need?
Flash Mob Project

Hey, its just a Django project!

What apps do we need?

   Dances


   Wall
Flash Mob Project

Hey, its just a Django project!

What apps do we need?

   Dances
      pip install pinax-dances

   Wall
Flash Mob Project

Hey, its just a Django project!

What apps do we need?

   Dances
      pip install pinax-dances

   Wall
     pip install pinax-wall
Step 3: Changing the logo
But Pinax doesn't do what I need!
But Pinax doesn't do what I need!

I want the Wall description field use a rich text editor!
But Pinax doesn't do what I need!

I want the Dance description field use a rich text editor!
I could add a new forms widget.
But Pinax doesn't do what I need!

I want the Dance description field use a rich text editor!
I could add a new forms widge.

But I don't want to fork the Dance (or groups, tribes, projects,
etc) application because I want easy upgrades.
But Pinax doesn't do what I need!

I want the profiles About Me field use a rich text editor

I could add a new forms widget

But I don't want to fork the Dance (or groups, tribes, projects,
etc) application because I want easy upgrades.

I'll do it entirely in the templates using django-wysiwyg!
Step 4: Adding outside app

       django-wysiwyg
Adding an outside app

  pip install django-wysiwyg

  INSTALLED_APPS = (
     ...
     'django_wysiwyg',
      )

  <body class="yui-skin-sam">

-- or --

   $('body').addClass('yui-skin-sam')
Adding an outside app

{% load wysiwyg %}

{% wysiwyg_setup %}

<textarea id="id_description">

</textarea>

{% wysiwyg_editor "id_description" %}
Questions?
1 of 30

Recommended

Creating mobile apps the web developer way by
Creating mobile apps the web developer wayCreating mobile apps the web developer way
Creating mobile apps the web developer wayLorna Timbah
372 views18 slides
Pinax Introduction by
Pinax IntroductionPinax Introduction
Pinax IntroductionDaniel Greenfeld
962 views31 slides
Python introduction by
Python introductionPython introduction
Python introductionJignesh Kariya
273 views60 slides
Podcasting and Multimedia with Plone by
Podcasting and Multimedia with PlonePodcasting and Multimedia with Plone
Podcasting and Multimedia with PloneJazkarta, Inc.
449 views39 slides
CP-TLE II (Drafting Technology) by
CP-TLE II (Drafting Technology)CP-TLE II (Drafting Technology)
CP-TLE II (Drafting Technology)Markleen Guimbao
2K views20 slides
What to know, process, reflect, understand, and transfer by
What to know, process, reflect, understand, and transferWhat to know, process, reflect, understand, and transfer
What to know, process, reflect, understand, and transferGilbert Bautista
2.9K views16 slides

More Related Content

Similar to Pinax Tutorial 09/09/09

Scientist meets web dev: how Python became the language of data by
Scientist meets web dev: how Python became the language of dataScientist meets web dev: how Python became the language of data
Scientist meets web dev: how Python became the language of dataGael Varoquaux
8.2K views80 slides
Evaluation question 6 by
Evaluation question 6Evaluation question 6
Evaluation question 6LuzieH
208 views10 slides
Question 4 How did you use media technologies in the construction and researc... by
Question 4 How did you use media technologies in the construction and researc...Question 4 How did you use media technologies in the construction and researc...
Question 4 How did you use media technologies in the construction and researc...Nay4697
199 views17 slides
Pinax Long Tutorial Slides by
Pinax Long Tutorial SlidesPinax Long Tutorial Slides
Pinax Long Tutorial SlidesDaniel Greenfeld
3.8K views90 slides
Critical Reflection 4 by
Critical Reflection 4Critical Reflection 4
Critical Reflection 4mediastudiesf1n34rts
132 views11 slides
A2 MEDIA - Evaluation Question 4 by
A2 MEDIA - Evaluation Question 4A2 MEDIA - Evaluation Question 4
A2 MEDIA - Evaluation Question 4MaxSunnar
71 views2 slides

Similar to Pinax Tutorial 09/09/09(20)

Scientist meets web dev: how Python became the language of data by Gael Varoquaux
Scientist meets web dev: how Python became the language of dataScientist meets web dev: how Python became the language of data
Scientist meets web dev: how Python became the language of data
Gael Varoquaux8.2K views
Evaluation question 6 by LuzieH
Evaluation question 6Evaluation question 6
Evaluation question 6
LuzieH208 views
Question 4 How did you use media technologies in the construction and researc... by Nay4697
Question 4 How did you use media technologies in the construction and researc...Question 4 How did you use media technologies in the construction and researc...
Question 4 How did you use media technologies in the construction and researc...
Nay4697199 views
A2 MEDIA - Evaluation Question 4 by MaxSunnar
A2 MEDIA - Evaluation Question 4A2 MEDIA - Evaluation Question 4
A2 MEDIA - Evaluation Question 4
MaxSunnar71 views
Next Video Build Launch Event Slides by Neven6
Next Video Build Launch Event SlidesNext Video Build Launch Event Slides
Next Video Build Launch Event Slides
Neven6114 views
Nicolas Pastorino - The Open-source roar in the eZ Community by Nicolas Pastorino
Nicolas Pastorino - The Open-source roar in the eZ CommunityNicolas Pastorino - The Open-source roar in the eZ Community
Nicolas Pastorino - The Open-source roar in the eZ Community
Nicolas Pastorino1.5K views
Open source software for startups by victorneo
Open source software for startupsOpen source software for startups
Open source software for startups
victorneo433 views
Question 6: Media technologies by aanisahkhan
Question 6: Media technologiesQuestion 6: Media technologies
Question 6: Media technologies
aanisahkhan155 views
Evaluation question 4 final by gq34khan
Evaluation question 4 finalEvaluation question 4 final
Evaluation question 4 final
gq34khan149 views
Evaluation 4 by Rob Terry
Evaluation 4Evaluation 4
Evaluation 4
Rob Terry182 views
Evaluation question 4 by foejfowjp
Evaluation question 4Evaluation question 4
Evaluation question 4
foejfowjp424 views
Introduction to development with Django web framework by Sammy Fung
Introduction to development with Django web frameworkIntroduction to development with Django web framework
Introduction to development with Django web framework
Sammy Fung191 views
Evaluation technology compressed by Seventeen17
Evaluation   technology compressedEvaluation   technology compressed
Evaluation technology compressed
Seventeen17177 views
Evaluation Question 4 by Callum Daley
Evaluation Question 4Evaluation Question 4
Evaluation Question 4
Callum Daley219 views

More from Daniel Greenfeld

How to Write a Popular Python Library by Accident by
How to Write a Popular Python Library by AccidentHow to Write a Popular Python Library by Accident
How to Write a Popular Python Library by AccidentDaniel Greenfeld
1.9K views114 slides
10 more-things-you-can-do-with-python by
10 more-things-you-can-do-with-python10 more-things-you-can-do-with-python
10 more-things-you-can-do-with-pythonDaniel Greenfeld
3.1K views20 slides
From NASA to Startups to Big Commerce by
From NASA to Startups to Big CommerceFrom NASA to Startups to Big Commerce
From NASA to Startups to Big CommerceDaniel Greenfeld
93.2K views208 slides
Thinking hard about_python by
Thinking hard about_pythonThinking hard about_python
Thinking hard about_pythonDaniel Greenfeld
8.5K views120 slides
Intro to Data Visualizations by
Intro to Data VisualizationsIntro to Data Visualizations
Intro to Data VisualizationsDaniel Greenfeld
3K views59 slides
An Extreme Talk about the Zen of Python by
An Extreme Talk about the Zen of PythonAn Extreme Talk about the Zen of Python
An Extreme Talk about the Zen of PythonDaniel Greenfeld
3.9K views101 slides

More from Daniel Greenfeld(20)

How to Write a Popular Python Library by Accident by Daniel Greenfeld
How to Write a Popular Python Library by AccidentHow to Write a Popular Python Library by Accident
How to Write a Popular Python Library by Accident
Daniel Greenfeld1.9K views
10 more-things-you-can-do-with-python by Daniel Greenfeld
10 more-things-you-can-do-with-python10 more-things-you-can-do-with-python
10 more-things-you-can-do-with-python
Daniel Greenfeld3.1K views
From NASA to Startups to Big Commerce by Daniel Greenfeld
From NASA to Startups to Big CommerceFrom NASA to Startups to Big Commerce
From NASA to Startups to Big Commerce
Daniel Greenfeld93.2K views
An Extreme Talk about the Zen of Python by Daniel Greenfeld
An Extreme Talk about the Zen of PythonAn Extreme Talk about the Zen of Python
An Extreme Talk about the Zen of Python
Daniel Greenfeld3.9K views
Lighting talk on django-social-auth by Daniel Greenfeld
Lighting talk on django-social-authLighting talk on django-social-auth
Lighting talk on django-social-auth
Daniel Greenfeld4.6K views

Recently uploaded

Crypto Quantum Leap by
Crypto Quantum Leap Crypto Quantum Leap
Crypto Quantum Leap ahmedjaan790
5 views22 slides
Quotes about hard work .pdf by
Quotes about hard work .pdfQuotes about hard work .pdf
Quotes about hard work .pdfInspire99
10 views17 slides
suman ppt.pptx by
suman ppt.pptxsuman ppt.pptx
suman ppt.pptxRajkumaryadav287370
16 views18 slides
Romel by
RomelRomel
RomelRomelPacisJr
13 views13 slides
Quotes on self confidence and self belief ppt .pdf by
Quotes on self confidence and self belief ppt .pdfQuotes on self confidence and self belief ppt .pdf
Quotes on self confidence and self belief ppt .pdfInspire99
14 views8 slides

Pinax Tutorial 09/09/09

  • 1. Pinax Tutorial Building a flash mob dance organizer site
  • 2. Who are we? James Tauber Daniel Greenfeld Pinax founder Pinax Core Developer Discoverer of the D^Jango Code NASA contractor
  • 3. Tutorial Prerequisites 1. Basic understanding of Django 2. Basic understanding of Python
  • 4. Flash mob dance site requirements
  • 5. Flash mob dance site requirements Lets us organize big flash mob dance events
  • 6. Flash mob dance site requirements Lets us organize big flash mob dance events We want groups so people can participate in dances
  • 7. Flash mob dance site requirements Lets us organize big flash mob dance events We want groups so people can participate in dances Need to have twitter clone so we can communicate locally without giving it away to everyone. We want updates inside dances.
  • 9. What is Pinax? Django with an opinion
  • 10. What is Pinax? Django with an opinion By integrating numerous reusable Django apps to take care of the things that many sites have in common, it lets you focus on what makes your site different.
  • 11. What is Pinax? Django with an opinion By integrating numerous reusable Django apps to take care of the things that many sites have in common, it lets you focus on what makes your site different. from magic import pony import pinax @pinax def django(ideas): return pony.magic(ideas)
  • 12. Step 1: Install Pinax Taunting the demo gods http://downloads.pinaxproject. com/Pinax-0.7rc1-bundle.tar.gz
  • 13. Virtualenv sidestep Authored by Ian Bicking Lets you pin releases in a safe, homogeneous environment
  • 14. Step 2: Create our project pinax-admin clone_project -l pinax-admin clone_project basic_project flash_dance
  • 16. Flash Mob Project Hey, its just a Django project!
  • 17. Flash Mob Project Hey, its just a Django project! What apps do we need?
  • 18. Flash Mob Project Hey, its just a Django project! What apps do we need? Dances Wall
  • 19. Flash Mob Project Hey, its just a Django project! What apps do we need? Dances pip install pinax-dances Wall
  • 20. Flash Mob Project Hey, its just a Django project! What apps do we need? Dances pip install pinax-dances Wall pip install pinax-wall
  • 21. Step 3: Changing the logo
  • 22. But Pinax doesn't do what I need!
  • 23. But Pinax doesn't do what I need! I want the Wall description field use a rich text editor!
  • 24. But Pinax doesn't do what I need! I want the Dance description field use a rich text editor! I could add a new forms widget.
  • 25. But Pinax doesn't do what I need! I want the Dance description field use a rich text editor! I could add a new forms widge. But I don't want to fork the Dance (or groups, tribes, projects, etc) application because I want easy upgrades.
  • 26. But Pinax doesn't do what I need! I want the profiles About Me field use a rich text editor I could add a new forms widget But I don't want to fork the Dance (or groups, tribes, projects, etc) application because I want easy upgrades. I'll do it entirely in the templates using django-wysiwyg!
  • 27. Step 4: Adding outside app django-wysiwyg
  • 28. Adding an outside app pip install django-wysiwyg INSTALLED_APPS = ( ... 'django_wysiwyg', ) <body class="yui-skin-sam"> -- or -- $('body').addClass('yui-skin-sam')
  • 29. Adding an outside app {% load wysiwyg %} {% wysiwyg_setup %} <textarea id="id_description"> </textarea> {% wysiwyg_editor "id_description" %}