Pinax

A brief Introduction to Pinax, This presentation covers set up of the current development version of Pinax (pre.9) as of 3/19/2010 and gives an overview of Django and Pinax. »
Tom Brander

Double click anywhere & add an idea
PINAX
Getting started
Out of the box
A Few Sites
What is coming
new apps
new wiki
new blog
badges
forums
activity streams
workflow
calendaring / events
translations
via transifex
alternative themes
new starter projects
zero project
static project
company project
http://oswco.com
Lots of users:
Google
NASA
National Geographic
PBS
Bit-Bucket
Newspapers 
Django as a framework: 

An MVC type framework (Called MVT in Django)

M= Model, The database interface
V= View, Logic for getting stuff in and out of the database
T= Template, The display logic

Closest competitor is Ruby on Rails Microsoft playing catch up in MVC frameworks still almost Beta Java examples are Grails, Spring, Struts or Java Server Faces PHP has dozens Symfony, CodeIgniter
 
For the Web MVT (or MVC) is as important a concept as "Structured Programming" and dates back to 1979.
 
Enables easier maintenance and independent development of functional modules with different skill sets
Django MVT
Model ..View...Template
Model
Database interface an abstraction
Supports:
Mysql
MSsql
Oracle
Postgre Sql
IBM Db2
Sql lite
Non-relational under active developement
In general: change the DataBase and don't touch your code Define model, Admin gets generated automatically So does the database
Most data editing

Django View
Most Business logic
edits, calculations
permissions
many libraries available 

Context processors:
More advanced business logic

Django Template
Simple template language
Css is separate
designed for non technical users such as designers

Easily able to use other Template models (Jinga)
Can be used with most advanced front end tools:
Ajax
Jquery
Pyjamas (an upcoming Python Web Presentation tool)
Flash
Adobe Air

# -*- coding: utf-8 -*-
# Django settings for social pinax project.

import os.path
import posixpath
import pinax

PINAX_ROOT = os.path.abspath(os.path.dirname(pinax.__file__))
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__))

# tells Pinax to use the default theme
PINAX_THEME = "default"

DEBUG = True
TEMPLATE_DEBUG = DEBUG

# tells Pinax to serve media through the staticfiles app.
SERVE_MEDIA = DEBUG

INTERNAL_IPS = [
    "127.0.0.1",
]

ADMINS = [
    # ("Your Name", "your_email@domain.com"),
]

MANAGERS = ADMINS

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3", # Add "postgresql_psycopg2", "postgresql", "mysql", "sqlite3" or "oracle".
        "NAME": "dev.db",                       # Or path to database file if using sqlite3.
        "USER": "",                             # Not used with sqlite3.
        "PASSWORD": "",                         # Not used with sqlite3.
        "HOST": "",                             # Set to empty string for localhost. Not used with sqlite3.
        "PORT": "",                             # Set to empty string for default. Not used with sqlite3.
    }
}
Announcements
Attachments
Avatars
Badges
Blogs
Bookmarks
Contact import
Email confirmation
Friends
Invitations
Markup
Microblogging

Resources:
http://skyl.org/
http://boss.oswco.net/
http://oswco.com/
http://www.slideshare.net/pydanny/why-django
http://www.slideshare.net/wiremine/django-overview
http://pinaxproject.com/docs/
http://pinaxproject.com/
http://code.pinaxproject.com/
http://www.allbuttonspressed.com/
Available Projects
------------------
basic_project:
    This project comes with the bare minimum set of applications and templates
    to get you started. It includes no extra tabs, only the profile and notices
    tabs are included by default. From here you can add any extra functionality
    and applications that you would like.


cms_company_project:
    A very simple CMS that lets you set up templates and then edit content,
    including images, right in the frontend of the site.
    The sample media, templates and content including in the project demonstrate
    a basic company website.

cms_holidayhouse_project:
    A very simple CMS that lets you set up templates and then edit content,
    including images, right in the frontend of the site.
    The sample media, templates and content including in the project demonstrate
    a basic site for holiday house rentals.

code_project:
    This project demonstrates group functionality and the tasks, wiki and topics
    apps. It is intended to be the starting point for things like code project
    management where each code project gets its own wiki, task tracking system
    and threaded discussions.

company_project:
    A starter project for company or project sites intended to provide static
    information and a blog.

intranet_project:
    This project demonstrates a closed site requiring an invitation to join and
    not exposing any information publicly. It provides a top-level task tracking
    system, wiki and bookmarks. It is intended to be the starting point of sites
    like intranets.

private_beta_project:
    This project demonstrates the use of a waiting list and signup codes for
    sites in private beta. Otherwise it is the same as basic_project.

sample_group_project:
    This project demonstrates group functionality with a barebones group
    containing no extra content apps as well as two additional group types,
    tribes and projects, which show different membership approaches and
    content apps.

social_project:
    This project demonstrates a social networking site. It provides profiles,
    friends, photos, blogs, tribes, wikis, tweets, bookmarks, swaps,
    locations and user-to-user messaging.
    In 0.5 this was called "complete_project".

static_project:
    This project just serves static media and templates with no models or views.
    It is a great starting point for doing HTML mockups while taking advantage of
    the Django templating language.

zero_project:
    This project lays the foundation for all other Pinax starter projects. It
    provides the project directory layout and some key infrastructure apps on
    which the other starter projects are based.
Notification
OAuth
OpenID
Pagination
Photos
Profiles
Sign up codes
Tagging
Tasks
Threaded-comments
Timezones
User-to-user messages
Voting
Wikis
Applications

Loading comments...

Please log in to add your comment.

Report abuse