18

Click here to load reader

ZamCamp - Django – webowy framework dla perfekcjonistów

  • Upload
    zamcamp

  • View
    614

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Django – webowy framework dla perfekcjonistów

Arkadiusz SmykZamcamp, Zamość 2010

[email protected]

Page 2: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

O mnie

● Programista­hobbysta● Linux user● Uczeń 

Page 3: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

O czym

● O tym co to Django● O możliwościach● O tym jak funkcjonuje

Page 4: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Django??

● Webowy framework napisany w pythonie● Do szybkiego tworzenia złożonych webapp'ów● Powstał z potrzeby ;­)● Wydajny● Na wysokim poziomie abstrakcji● Z naprawdę bardzo dobrą dokumentacją

Page 5: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Na początek...

● DRY (Don't Repeat Yourself)● KISS (Keep It Smile, Stupid)

Page 6: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

MTV

● Model● Template● View

...Prawie to samo co MVC...

Page 7: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Model

● Jest strukturą która opisuje tabele w bazie danych● Każdy model jest klasą● Pola danej klasy określają strukture tabeli w bazie danych 

Page 8: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Model

from django.db import models

class Osoba(models.Model): imie = models.CharField(max_length=30) nazwisko = models.CharField(max_length=30) wiek = models.IntegerField()

Page 9: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

CREATE TABLE appka_osoba ( "id" serial NOT NULL PRIMARY KEY, "imie" varchar(30) NOT NULL, "nazwisko" varchar(30) NOT NULL "wiek" integer NOT NULL);

I zrobila się taka tabela...

Page 10: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

ORM Django

>>> o = Osoba(imie='Tadeusz',nazwisko='Korzecki',wiek='99')>>> o.save()>>> o.id #zwróci id>>> o.imie #zwróci imię>>> b = Osoba.objects.all() #a to da wszystkie osoby z bazy

Page 11: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

View

● Każdy widok jest funkcją z min. 1 argumentem(żądanie np. GET) która:● Łączy to co było(Model) i to co zaraz(Template)● Pobiera dane● Wczytuje i renderuje szablon

Page 12: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

View

from appka.models import Osobafrom django.shortcuts import render_to_response

def widok(request): o = Osoba.objects.all() #wyciagamy wszystkie 'Osoby' z bazy return render_to_response('szablon.html',{'o':o}) #przekazujemy dane do szablonu

Page 13: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Template

● Zwykły plik tekstowy● Definiuje wygląd strony● Zawierający tagi HTML'a● I tagi Django'we które przechowują treść i kontrolują logike strony

Page 14: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Template

<h1>Moja Strona </h1>{% for x in o %}

<h3>{{ x.imie }}</h3><br><h3>{{ x.nazwisko }}</h3><h2>{{ x.wiek }}</h2>

{% endfor %}

Page 15: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Co jeszcze?

● Automagicznie generowany panel admina● Działa na kilku systemach bazodanowych(MySql, Oracle, SQLite, PostreSQL)● Działa na serwerach z odpowiednim modułem(np.mod_python, FastCGI)

Page 16: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Sprawa hostingu

● Mniej popularny od php● Można i za darmo – alwaysdata.com i Google App Engine● Dla niektórych ludzi mit z hostingiem skreśla django

Page 17: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

Podsumowując

● Robi się coraz popularniejszy● Wszystkie niezbędne elementy do stworzenia www w jednym opakowaniu● Prosty, łatwy i szybki ;­)

Page 18: ZamCamp - Django – webowy framework dla perfekcjonistów

   

Django – webowy framework dla perfekcjonistów

Arkadiusz Smyk – Zamcamp 28.10.2010

THE END

www.djangoproject.com