Symfony Apps

Di Post-an saya sebelum nya kita udah lihat sekilas tentang symfony, dan atas permintaan beberapa teman akhirnya saya putus kan untuk sedikit lebih mendetail tentang perintah perintah nya.

Kemarin kita membahas mengenai aplikasi untuk mereview film, mari kita lanjutkan pembahasan kemarin.

Lakukan ini di konsole / command prompt di directory tempat kita menyimpan symfony.

%SYMFONY% adalah tempat kita menyimpan symfony

langkah pertama ada inisialisasi module di symfony


C:\>%SYMFONY%\symfony init-app samples

Movie One to Many Review
User One to Many Review
Review Many to One User
Review Many to One Movie

maka kita akan mendapatkan rancangan database seperti ini :

Rancangan Database untuk Aplikasi Movie Database

Perhatikan di aplikasi diatas table name untuk user adalah sf_guard_user, sf_guard_user adalah salah satu table yang di gunakan oleh sfGuardUser salah satu plugin symfony, plugin ini di gunakan untuk authorisasi user.

langkah selanjut nya adalah merubah file yang ada di config/schema.yml menjadi seperti ini :


---
propel:
 movie:
    _attributes: { phpName: Movie }
    id:
    movie_name: varchar(50)
    movie_synopsis: longvarchar
    movie_released: date
    movie_produsen: varchar(100)
    movie_director: varchar(50)
    created_at:

 review:
    _attributes: { phpName: Review }
    id:
    movie_id:
    user_id: { type: integer, foreignTable: sf_guard_user, foreignReference: id, required: true, onDelete: cascade }
    reviews: longvarchar
    rating: varchar(5)
    created_at:

Perhatikan bahwa untuk tipe data String di symfony kita harus masukkan sebagai varchar atau longvarchar perbedaan antara varchar dengan longvarchar adalah banyaknya karakter, varchar maksimum hanya 255 diatas 255 gunakan longvarchar. Dan jangan lupa bahwa yml sangat sensitive dengan masalah spasi, dan juga tidak boleh ada tab. Sesuaikan editor anda untuk memakai 4 spasi menggantikan satu kali tab.

Setelah file di ubah, dan di simpan, maka yang harus kita lakukan adalah meng generasi kan database untuk symfony.


C:\>%SYMFONY%\symfony propel-build-model

Perintah ini berfungsi untuk membangun model atau object dari schema.yml, model ini lah nanti yang akan berfungsi menjadi DAO


C:\>%SYMFONY%\symfony propel-build-sql

Perintah yang satu ini berfungsi untuk membuat perintah perintah sql dari schema.yml


C:\>%SYMFONY%\symfony propel-insert-sql

Setelah di buat perintah perintah sql lalu di eksekusi melalui perintah diatas.

Dan selanjutnya kita akan coba meng generasi kan model model yang telah kita buat melalui perintah diatas. Dengan perintah berikut


C:\>%SYMFONY%\symfony propel-generate-crud samples movie Movie

untuk melihat nya kita harus membuka browser lalu buka url http://localhost/samples/web/samples_dev.php/movie/list
Direktori samples merupakan root direktori dari symfony
Contoh: List dari database movie yang kita buat.


C:\>%SYMFONY%\symfony propel-generate-crud samples review Review

Perhatikan juga bahwa semua relationship di form tersebut sudah di solve dengan cara memberikan combobox.
Contoh: List dari database movie yang kita buat.


C:\>%SYMFONY%\symfony cc

Perintah ini untuk membersihkan cache dari symfony… biasakan setelah melakukan perubahan kita melakukan clear cache

Yup That’s it for today
Update :
Untuk contoh aplikasi bisa langsung di coba disini dengan username dan password admin

3 thoughts on “Symfony Apps

  1. [quote comment=”24″]Hayoo, dibuat online dong :p[/quote]

    pengen sih om, tapiiiii gak bisa upload, rata2 diatas 10 mb, ini lagi coba pake ftp langsung…

    UPDATE:
    Udah Upload, dan bisa di akses melalui ini, pada saat minta login, masukkan admin dengan password admin

    Jika ingin lihat backend untuk user silahkan masuk ke ini

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s