Thursday, July 9, 2009

Using django - beginning

Installing

> sudo apt-get install python-django

Start project

> django-admin startproject sampleproject

Then, directory sampleproject is created.
You can run test server using manage.py in the directory.
You can set details using setting.py.
You can set urls using urls.py

Setting DB(ex. SQLite)

Edit setting.py.
- Set DATABASE_NAME, DATABASE_ENGINE

Then create DB.
> ./manage.py syncdb
- Chose if you will set superuser account.

Run server

> ./manage.py runserver

Check it with url 'http://localhost:8000/'
(8000 is default.)

Create application

In one project, you can have several web-applications. Django calls it as applications.

Create with commands,
> ./manage.py startapp sampleapp

Directory sampleapp is then generated.

Application is recommended to be designed with MVC model.

In sampleapp directory,
You can define http request handler function in the file views.py

Implementing handler

Example,
<views.py>
from django.http import HttpResponse

def main(request):
  output = "<html>Welcome!</html>"
  return HttpResponse(output)
<eof>

'request' has many informations about current requests.

<urls.py>
from sampleapp.views import *
...
urlpatterns = patterns('',
  (r'^$', main)
)
<eof>

In 'r'^$', r means regular expression, ^ is first of uri and $ stands for the last.
So it means '/' actually. Function main has been set as a handler for '/' above.

Now, check your first page with browser using 'http://localhost:8000/'. Good job!

Regular expressions

You can use expressions like below
. ^ $ * + ? | [a-z] \w \d
\w means alphabet or '_'
\d means one letter digit.

No comments:

Post a Comment