Symfony web Framework

Mungkin rekan rekan semua udah ada yang pernah denger symfony web application framework

Based on the best practices of web development, thoroughly tried on several active websites, symfony aims to speed up the creation and maintenance of web applications, and to replace the repetitive coding tasks by power, control and pleasure.

di website nya bilang begituh… well anyway mari kita coba coba belajar symfony….

langkah nya cukup gampang koq

1. Download
Untuk intial project disarankan untuk mendonlot sf_sandbox. Kenapa ? karena di sandbox itu semua requirement nya symfony udah tersedia. Jadi tinggal pake dan utak atik…

2. Set PHP
Langkah berikutnya kita set PHP biar bisa di panggil lewat konsole. Klo di windows itu di Start->Setting->Control Panel->System->Advanced Options->Environment Variables lalu cari variable Path, lalu edit… tambahkan %PATH%:$PATH_TO_PHP … $PATH_TO_PHP itu tempat kita taruh php.exe

database
Sekarang kita akan coba membuat aplikasi database dalam hal ini kita coba buat aplikasi movie Review…

Didalam perencanaan nya kita ingin ada Movies, Movies bisa direview oleh banyak User, Setiap User bisa Mereview banyak movie sehingga kita dapatkan dua database dengan hubungan many to many. Untuk mempermudah kita buat satu table untuk membantu kita yaitu table review…
Jadi table kita menjadi

  1. Movie One to Many Review
  2. User One to Many Review
  3. Review Many to One User
  4. Review Many to One Movie

Untuk memperkirakan field database kita gunakan asumsi-asumsi…

Movie
Setiap Movie pasti ada judul, produsen, sutradara, tanggal release movie nya, sama sinopsis.

User
Setiap User punya user, password, etc….

Review
Ada Movie, ada User yang mereview, ada isi review, tanggal review, sama rating….

Saya kira segitu cukup untuk memberikan gambaran bagaimana database yang akan kita buat.

Untuk database di symfony sendiri, standardnya menggunakan
Propel
Propel ada sebuah ORM ( Object Relational Mapping ), yang menurut saya sih sangat membantu, yah lumayan lah walau klo di bandingkan dengan hibernate di Java masih kalah.

Sedikit mengutip dari Wikipedia :

Object-Relational mapping (aka O/RM, ORM, and O/R mapping) is a programming technique for converting data between incompatible type systems in databases and object-oriented programming languages. This creates, in effect, a “virtual object database” which can be used from within the programming language Wikipedia

Untuk mengedit database di symfony edit sebuah file di folder config/schema.yml
kira kira ini isi nya


propel:
 movie:
    _attributes: { phpName: Movie }
    id:
    movie_name: varchar(50)
    movie_detail: longvarchar
    movie_length: varchar(10)
    movie_status: varchar(25)
    movie_genres: varchar(50)
    movie_released: date
    movie_rating: varchar(100)
    movie_distributors: varchar(50)
    movie_production_co: varchar(50)
    movie_studio: varchar(50)
    movie_location: longvarchar
    movie_produced_in: varchar(50)
    created_at:

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

harap di perhatikan kalau settingan ini sangat sensitive masalah spasi , dan tidak boleh pake TAB

setelah di simpan
lalu coba buka directory symfony melalui konsole lalu ketik :


C:\>symfony propel-build-model
C:\>symfony propel-build-sql
C:\>symfony propel-insert-sql

dan viola!!! jadi deh database nya … default dari sandbox memakai sqllite…

CRUD
CRUD ada lah aplikasi dasar dalam PHP yang fungsinya hanya untuk Create Read Update Delete jadi untuk mempermudah dan mempercepat kita gunakan generator bawaan dari symfony…


C:\>symfony propel-generate-crud frontend movie Movie
C:\>symfony propel-generate-crud frontend critics Critics
C:\>symfony cc

frontend perintah di atas adalah nama aplikasi nya ….
movie adalah nama script nya sedangkan Movie adalah nama object nya..
— phpName: Movie di schema.yml —
symfony cc adalah perintah untuk membersihkan cache nya symfony…

lalu coba buka browser .. lalu buka url
http://localhost/sf_sandbox/web/frontend_dev.php/movie

jika semua langkah nya tepat seharusnya keluar

Symfony…

well segitu aja dulu sekarang … kita lanjutin lain waktu

10 thoughts on “Symfony web Framework

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