Django Tutorial 4 : Static file

Tutorial ini bekerja untuk Django 1.2

  Setelah kita belajar bagaimana menampilkan ‘Hello World’ dalam tutorial sebelumnya, kali ini kita akan mempelajari bagaimana cara meletakkan file statis didalam project pawang ini, dalam hal ini kita meletakkan file Javascript Library Dojo. Dojo akan kita pergunakan sebagai User Interface didalam project ini.

Kang dojo-nya diambil dimana ?

Dojo dapat diambil di websitenya dojotoolkit, ini link nya.

Tutorial

  1. Buat direktori media, media/js, templates, templates/core di dalam project pawang dengan perintah sebagai berikut :
    $ mkdir media
    $ mkdir media/js
    $ mkdir templates
    $ mkdir templates/core
  2. Extract file dojo didalam direktory js tersebut dengan nama direktori dojo.
  3. Edit file settings.py dan ubah parameter parameter berikut :

    MEDIA_ROOT = '/Project/pawang/media/'
    MEDIA_URL = 'http://localhost:8000/media/'
    ADMIN_MEDIA_PREFIX = '/media/'
  4. Edit file urls.py dan tambahkan string berikut ini :

    (r'^site_media/(?P
    .*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
  5. Kita akan merubah halaman ‘Hello World’ agar menggunakan UI dari dojo. Edit file views.py, dan ubah fungsi index menjadi seperti berikut :

    def index(request):
    # return HttpResponse("Hello, world. You're at The Project PAWANG index page.")
    t = loader.get_template('core/index.html')
    c = Context({"name" : "test"})
    return HttpResponse(t.render(c))
  6. Buat file index.html di dalam direktori templates/core, dan copy paste content html seperti berikut :
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
       <title> C O R E </title>
       <style type="text/css">
          @import "/site_media/js/dojo/dojox/layout/resources/ExpandoPane.css";
    	  @import "/site_media/js/dojo/dojo/resources/dojo.css";
          @import "/site_media/js/dojo/dijit/themes/soria/soria.css";
    	  html, body {
    				width: 100%;	/* make the body expand to fill the visible window */
    				height: 100%;
    				overflow: hidden;	/* erase window level scrollbars */
    				padding: 0 0 0 0;
    				margin: 0 0 0 0;
    			}
       </style>
       <script type="text/javascript" src="/site_media/js/dojo/dojo/dojo.js" djConfig="parseOnLoad:true, isDebug:true"></script>
       <script type="text/javascript">
    		dojo.require("dijit.layout.TabContainer");
    		dojo.require("dijit.layout.BorderContainer");
            dojo.require("dojox.layout.ExpandoPane");
       </script>
    </head>
    <body class="soria">
        <div id="BorderCon" style="width:100%; height:100%;" dojoType="dijit.layout.BorderContainer" persist="true" design="sidebar" >
            <!-- Left Pane -->
            <div dojoType="dojox.layout.ExpandoPane"
                id="leftPane"
                region="left"
                title="C o r e"
                splitter="true"
                duration="125"
                maxWidth="275"
                style='width: 275px; background: #fafafa;'>Hello world
            </div>
            <!-- Center Pane -->
            <div dojoType="dijit.layout.TabContainer" region="center" id="centerPane">
            </div>
        </div>
    </body>
    </html>
    
  7. Jika anda bisa melihat tulisan ‘Hello World’ didalam browser anda melalui alamat http://localhost:8000/ , Selamat anda sudah menyelesaikan tutorial ini.

Django Tutorial 3 : Create Application Pawang – Core

Tutorial ini bekerja untuk Django 1.2

  Setelah kita berhasil menghubungkan database postgresql dengan project pawang yang kita buat melalui Django, tutorial berikut ini kita akan membuat applikasi pawang-nya, kita beri nama

CORE.

Lho kang apa bedanya project pawang dengan applikasi pawang ?

Project pawang itu adalah instance dari django, dan ini hanya sekali dibuat. Instance ini adalah tempat dimana applikasi applikasi django akan kita kembangkan

Applikasi pawang ( CORE ) adalah salah satu applikasi yang kita buat didalam instance tersebut, kita bisa mengembangkan project pawang ini dengan membuat applikasi lainnya, semisal accounting, inventory atau payroll

Tapi kalau bingung tidak apa apa, ikuti saja tutorial ini terus, nanti juga akan paham sendiri.

Tutorial

  1. Untuk membuat applikasi CORE, jalankan perintah berikut :

    python manage.py startapp core
  2. Perintah tersebut akan membuat direktori core yang berisikan file file sebagai berikut :

    $ ls core -l
    __init__.py
    models.py
    tests.py
    views.py
  3. Edit file settings.py dan tambahkan string ‘pawang.core’ berikut ini di dalam parameter INSTALLED_APP. Langkah ini akan mendaftarkan applikasi core ke dalam instance Pawang untuk otomatis di jalankan pada saat web development server dijalankan.
  4. Edit file urls.py dan tambahkan baris perintah berikut ini :

    (r'^$', 'pawang.core.views.index')
    . Langkah ini akan memberitahu instance Pawang, bahwa request url ke ‘http://localhost:8000/’ ini akan menjalankan fungsi index di dalam file views dari applikasi core
  5. Kemudian edit file views.py di dalam directory applikasi core yang sudah kita buat tadi dan copy paste kan baris baris perintah berikut ini :

    # Create your views here.
    from django.http import HttpResponse
    from django.template import Context, loader
    from django.http import HttpResponse


    def index(request):
    return HttpResponse("Hello, world. You're at The Project Pawang index page.")
  6. kemudian kita test hasilnya, kita jalankan web development servernya dengan perintah sebagai berikut :

    python manage.py runserver
  7. Buka internet browser anda, dan arahkan ke alamat http://localhost:8000/. Jika anda bisa melihat tulisan Hello World, Selamat anda sudah berhasil dalam tutorial ke tiga ini.

Django tutorial 2 : Database Connection

Tutorial ini bekerja untuk Django 1.2

  Setelah kita dapat membuat project pawang serta start and stop web development server dari django, maka kali ini kita akan belajar mengenai koneksi ke database, dalam hal ini postgresql database.

Yang perlu disiapkan :

  • Postgresql, yang berfungsi untuk menyimpan data
  • Psycopg2, yang berfungsi sebagai driver antara python dan database Postgresql.
  • Database pawang sudah di buat didalam Postgresql

Tutorial :

  • Edit file settings.py, dan ubah parameternya seperti berikut :

    DATABASE_ENGINE = 'postgresql_psycopg2'
    DATABASE_NAME = 'pawang'
    DATABASE_USER = 'postgres'
    DATABASE_PASSWORD = 'postgres'
    DATABASE_HOST = '127.0.0.1'
    DATABASE_PORT = ''
  • Kemudian perhatikan parameter INSTALLED_APPS. Parameter ini berisikan modul modul dasar dari Django. Ubah setting parameternya seperti berikut :

    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.admin',
  • Setelah setting untuk database siap, berikutnya kita akan melakukan sinkronisasi antara Django dengan database postgresql

    python manage.py syncdb
  • Perintah diatas akan membuat tabel tabel baru di dalam database postgresql berdasarkan pada module apa saja yang kita install, seperti point diatas. Kemudian jika kita menginstall django.contrib.auth, maka kita akan ditanya apakah kita akan membuat superuser untuk sistem otentikasi yang kita install. Untuk project pawang kita install superuser dengan user = pawang, dan password = pawang
  • Setelah itu kita bisa melihat tabel tabel yang telah di buatnya melalui database browser, semisal PGAdmin III, untuk memastikan proses syncdb berhasil dijalankan. Jika ada tabel tabel baru didalam database yang telah anda buat di postgresql, dalam hal ini database pawang, maka selamat anda telah berhasil melakukan koneksi ke database postgresql dari django.

Django Tutorial 1 : Create Project Pawang

Tutorial ini bekerja untuk Django 1.2

  Tutorial pertama kita ini adalah pembuatan project. Tutorial ini bisa dilakukan apabila django sudah terinstall di sistem komputer kita.

  1. Pilih salah satu direktori dimana kita akan menyimpan project kita yang baru ini, kita ambil contoh direktory Project
    $ cd Project
  2. Kemudian kita jalankan perintah untuk membuat project yang baru,kita ambil contoh nama projectnya adalah project pawang
    $ django-admin.py startproject pawang
  3. Perintah tersebut secara otomatis akan membuatkan direktori baru, bernama pawang, yang berisikan file file seperti ini :
    $ ls pawang -l
    __init__.py
    manage.py
    settings.py
    urls.py
    Detail dari file file ini akan kita pelajari nanti.
  4. File file tersebut merupakan file file dasar yang menjadi dasar dari applikasi yang dibuat melalui framework django. Mari kita jalankan konfigurasi dasar ini.
    $ python manage.py runserver
    Validating models...
    0 errors found


    Django version 1.2, using settings 'pawang.settings'Development server is running at http://127.0.0.1:8000/
    Quit the server with CONTROL-C.
    Manage.py dipergunakan untuk berkomunikasi dengan system django melalui command line atau prompt. Detail penggunaan manage.py bisa kita pelajari nanti
  5. Kemudian kita lihat hasilnya melalui internet browser kita , contohnya firefox, opera atau google chrome, dan masukkan http://127.0.0.1:8000 di bagian address bar
  6. Pastikan anda melihat tulisan “Wellcome to Django” pada halaman yang muncul di internet browser anda.
  7. Untuk mematikan web server development tersebut, tekan CTL+C

Selamat anda telah membuat suatu applikasi baru yang siap untuk anda kembangkan, dalam hal ini kita mengembangkan project Pawang. Langkah berikutnya adalah menghubungkan Project pawang dengan database postgresql.

Apa itu Project Pawang ?

Project Pawang adalah ide dari saya untuk membuat suatu applikasi kecil yang akan selalu di pergunakan setiap kali kita membuat suatu software. Berisikan manajemen user, menu, role dan pengaturan perusahaan. Applikasi kecil ini akan di sajikan dalam gaya pembelajaran “step by step” tutorial agar teman teman bisa belajar dengan mudah.

Sebenarnya Project Pawang ini sudah di release December 2009. Tetapi, berhubung alasan klasik, “kesibukan”, maka baru saat ini project ini di jalankan kembali. Semoga Project ini bisa memberikan manfaat buat teman teman sekalian.

Project pawang ini, untuk saat ini, menggunakan bahasa python dan akan menggunakan beberapa framework. Diharapkan dengan menggunakan gaya “step by step” ini, kita semua bisa mempelajari python dan frameworknya. Tentu saja tidak secara detail karena target dari project pawang ini adalah para pemula, baik pemula pengguna bahasa python maupun pemula pengguna framework.

Target framework yang akan di pergunakan adalah sebagai berikut :

1. Django
2. Web2Py
3. Pylons
4. TurboGears

Sedangkan untuk user interface menggunakan Dojo Framework.

Nah untuk para pengguna python bisa menggunduh file project ini untuk mengembangkan lebih lanjut tanpa keharusan untuk merelease perubahan yang dilakukannya itu. Mereka bisa mengembangkannya untuk sistem Human Resource di kantor mereka, atau sistem Kehutanan, atau sistem CMS, atau sistem yang lain lain.

Tentu saja software yang di hasilkan dari project ini harus memiliki licence. Saya sedang merencanakan untuk menggunakan MIT licence. Semoga licence MIT ini sesuai dan flexible dengan tujuan di atas.

Bagaimana menurut anda ?

Install Django di Ubuntu 10.04

Ubuntu 10.04

  Untuk Project Pawang ini, saya menggunakan Ubuntu 10.04. Tidak ada alasan khusus mengapa harus menggunakan sistem operasi ini. Saya mengambil praktisnya saja, karena memang sehari hari saya menggunakan sistem operasi ini.

Syarat untuk instalasi Django Framework adalah terinstallnya bahasa pemrograman python 2.4 atau yang lebih tinggi didalam sistem operasi yang akan kita pergunakan. Secara default python 2.4 sudah terinstall di dalam Ubuntu 10.04.

Untuk Django Framework, Ubuntu melakukan instalasi secara otomatis. Versi Django yang tersedia di repository Ubuntu versi ini adalah Django versi 1.1.1. Kita pakai versi yang ada di Website Django Project yakni versi 1.2.4

Instalasi :

1. Download Django versi 1.2.4 .

2. Kemudian extract file tersebut dan lakukan perintah instalasi seperti di bawah ini :

$ tar xzvf Django-1.2.4.tar.gz
$ cd Django-1.2.4
$ sudo python setup.py install

3. Django telah terinstall di sistem anda, untuk melihat apakah sudah terinstall, cek dengan perintah berikut ini :

$ django-admin.py

4. Apabila anda bisa melihat baris perintah perintah sebagai berikut ini, maka anda telah berhasil menginstall django.

Usage: django-admin.py subcommand [options] [args]

Options:
-v VERBOSITY, --verbosity=VERBOSITY
...
..
.