Friday 8 August 2014

Symfony2 for Beginner Part 6 - Generate Crud

Hai Readers ,
Bagaimana belajarnyaa? Seru kan belajar symfony :)
Kali ini yuk kita lanjutkan tutorial nya.
Nah , project sekarang asik lo karena kita membuat simple project yakni CRUD project hihi

Kalo di symfony pembuatan CRUD sangatlah gampang. Yuk langsung aja.

Step 1.
Buat database dengan nama : symfony_3
Insertkan field seperti dibawah ini :


Step 2.
Setelah membuat database, kita lanjutkan ke terminal.
Masuk ke /webrootKalian/NamaFolderSymfony

Step 3.
Ketikkan
php app/console generate:bundle



Step 4.
Setelah membuat bundle sukses, yuk kita membuat file ORM untuk membuat field-field di view nya.

Ketikkan
php app/console doctrine:mapping:import --force CrudNewsBundle xml


Step 5.
Setelah berhasil, kita meminta Doctrine untuk membangunkan relasi class entitas
Ketikkan
php app/console doctrine:mapping:convert annotation ./src
php app/console doctrine:generate:entities CrudNewsBundle



Step 6.
Dibagian ini, kita men-generate CRUD


Step 7.
Untuk menjalankannya, masuk ke app/config/routing.yml
Ganti script menjadi seperti dibawah ini :


Step 8.
Cek browser ketik http://localhost/semangat/Symfony/web/app_dev.php/news/


yeay, gimana? Punya kalian kagak ada errornya kan? :)
Thanks for visited my blog :)
Semoga bermanfaat :)

Friday 1 August 2014

Symfony2 for Beginner Part 5 - Create a page

Hello sahabat beautiful Thing ! Hello para pemulanya Symfony :)
Yuk kita belajar lagi tentang Symfony.
Kali ini , kita belajar tentang cara membuat sebuah Page di Symfony2.
Ternyata gampang banget kok buatnya.
Langsung aja deh

Step 1.
Cek pada app/config/routing.yml
Apa dia sudah membentuk sebuah bundle apa belum? Kalo routing.yml kosong, silahkan membuat bundle terlebih dahulu.


Step 2.
Setelah mengecek app/config/routing.yml , buka file src/namespaceKalian/namaBundle/Resource/config
Dan akan muncul seperti ini :


Ubahlah syntax diatas menjadi seperti yang diinginkan untuk mencoba membuat page sendiri, contoh seperti berikut :


Step 3.
Buka file src/namespaceKalian/namaBundle/Controller/DefaultController.php

hapus "$name" dan ", array('name' => $name)"


Step 4. 
Buka file : src/namespaceKalian/namaBundle/Resource/view/Default/index.html.twig
Ubahlah dengan sesuka Kalian.
contoh seperti dibawah ini :


Step 5.
Buka browser, ketik url : webroot/project/app_dev.php/salam

Step 6.
Untuk lebih lanjut, Buka src/namespaceKalian/namaBundle/Resource/config/routing.yml , lalu tambahkan script seperti berikut.


Step 7.
Tambahkan juga script dibawah ini pada src/namespaceKalian/namaBundle/Controller/DefaultController.php


Step 8. 
Tambahkan juga pada src/namespaceKalian/namaBundle/Resource/view/Default/index.html.twig
contoh seperti berikut :


Step 9. 
Nah, buka browser ketikan webroot/project/app_dev.php/salam

Maka yang muncul seperti ini :

Tambahkan /Palestine pada url . 
Nah liat perubahannya seperti berikut.


Hari ini kita udah belajar membuat Page lhoo.
Yuk ikuti lanjutan tutorialnyaa.
See you ! Salam BeautifulThing!
widyaratnasari

Thursday 31 July 2014

Symfony2 for Beginner Part 4 - Create a bundle

Hai !
Gimana instalasi symfonynyaa? sukses kah??
kalo sudah sukses yuk mari kita buat bundle
Bundle ? Apa itu bundle ?
Bundle adalah sebuah direktori yang terstruktur, digunakan untuk menyimpan resource (sumber daya) seperti class Controller, View, Model, CSS, JS, dan file configurasi yang lainnya pada symfony.
Sudah paham kan? Yuk, mulai saja membuat bundle nya :)

Step 1.
Masuk ke directory root kalian menggunakan terminal / command prompt. /var/www/html/namaProject

Step 2.
Ketikkan : php app/console generate:bundle
Dan ikutilah langkah-langkanyaa.




Nah , kalian berhasil apa tidakkk ?

Yuk ikuti terus tutorial ini . Semoga bermanfaat . Xoxo :)

Wednesday 16 July 2014

Symfony2 for Beginner Part 3 - Exploring Symfony's Code

Hai readers setiaku !
Apa kabar nih ? Gimana latihan Symfony nya? Kalo belum tahu Symfony itu makanan apa , yuk baca dulu Latihan 1 - Symfony dan Latihan 2 - Symfony

Setelah kemarin kita latihan tentang instalasi dan konfigurasi, yuk kita pelajari lagi tentang Symfony Code ..

Pada pandangan pertama, ketika kita membuka folder Symfony , kita pasti akan bertanya-tanya dengan muka sedikit terkejut. Karena di folder Symfony ini banyak terdapat folder yang menakutkan yang berisi file-file php atau html atau keduanya atau file-file lainnya.
Seram banget kaan ?
tapi tenang saja, yuk mari bahas satu persatu !

POLA MVC

Inget tentang MVC ?
Symfony didasarkan pada pola desain klasik web yang dikenal sebagai arsitektur MVC, yang terdiri dari tiga tingkatan :
  1. Model :  mewakili informasi yang mana aplikasi beroperasi dengan logika yang berisi query.
  2. View : membuat model ke dalam halaman web yang cocok untuk interaksi dengan pengguna.
  3. Controller : merespon aksi pemakai dan mengaplikasikan perubahan pada model ataupun view. 
Arsitektur MVC memisahkan logika bisnis (model) dan presentasi (tampilan), sehingga menghasilkan kemudahan pemeliharaan. Misalnya, jika aplikasi Anda harus bisa berjalan pada browser web standar dan perangkat genggam, Anda hanya perlu mengubah View. Anda dapat membiarkan controller dan model sesuai aslinya. Controller membantu menyembunyikan detail dari protokol yang digunakan untuk request (HTTP, mode konsol, mail, dan sebagainya) dari model dan view. Dan model mengabstraksi logika data, yang membuat pandangan dan independen tindakan, misalnya, jenis database yang digunakan oleh aplikasi. 

Penggunaan MVC di Symfony 

  












Pertama-tama, front controller dan tata letak yang umum untuk semua tindakan dalam sebuah aplikasi. Kita dapat memiliki beberapa controller dan layout, tetapi kita hanya perlu satu masing-masing. Front controller adalah komponen logika MVC murni, dan kita tidak akan pernah perlu menulis satu pun, karena symfony akan menghasilkan untuk kita.

Kabar baik lainnya adalah bahwa kelas model juga diciptakan otomatis, berdasarkan struktur data kita. Ini adalah pekerjaan dari perpustakaan Propel, yang menyediakan kerangka kelas dan kode generasi. Jika Propel menemukan kendala utama atau bidang tanggal, maka akan memberikan accessor dan mutator metode khusus yang akan membuat manipulasi data. Dan abstraksi database sama sekali tidak terlihat oleh kita, karena ditangani oleh komponen lain, yang disebut Creole. Jadi jika kita memutuskan untuk mengubah database pada satu saat, kita tidak memiliki kode untuk menulis ulang. Kita hanya perlu mengubah parameter konfigurasi.

Dan hal terakhir adalah logika view dapat dengan mudah diterjemahkan sebagai file konfigurasi sederhana, tanpa perlu pengetahuan pemrograman.
 
 


Pada symfony, sebuah proyek merupakan satu set layanan dan operasi yang tersedia di bawah nama domain yang diberikan dan berbagi obyek model yang sama.

Di dalam sebuah proyek, operasi dikelompokkan secara logis ke dalam aplikasi. Sebuah aplikasi biasanya dapat berjalan secara independen dari aplikasi lain dari proyek yang sama. Dalam kebanyakan kasus, sebuah proyek berisi dua aplikasi yaitu satu untuk front-office dan satu untuk back-office, serta mempunyai database yang sama. Tapi kita juga dapat memiliki satu proyek yang mengandung banyak situs mini, dengan masing-masing situs sebagai aplikasi yang berbeda. Perhatikan bahwa hyperlink antara aplikasi harus dalam bentuk absolut.

Setiap aplikasi merupakan seperangkat satu atau lebih modul. Sebuah modul biasanya mewakili sebuah halaman atau sekelompok halaman dengan tujuan yang sama. Sebagai contoh, Anda mungkin memiliki modul rumah, artikel, bantuan, shoppingCart, akun, dan sebagainya.

Modul melakukan aksi, yang mewakili berbagai tindakan yang dapat dilakukan dalam modul. Sebagai contoh, modul shoppingCart dapat memiliki add, show, dan memperbarui tindakan. Secara umum, tindakan dapat digambarkan dengan kata kerja. Berurusan dengan tindakan hampir seperti berurusan dengan halaman dalam sebuah aplikasi web klasik, meskipun dua action dapat menghasilkan halaman yang sama (misalnya, menambahkan komentar ke posting dalam weblog akan menampilkan posting dengan komentar baru)

  
Semoga bacaan diatas membantu memahami APA YANG DIMAKSUD MVC DI SYMFONY .
Salam BeautifulThing! 
widyaratnasari



 

Thursday 10 July 2014

Symfony2 for Beginner Part 2 - Instalation and Configuration menggunakan Composer dan Command Line interface


Belum mengenal symfony2, yuk baca symfony2 for beginner part 1 :)
kali ini kita akan belajar tentang cara instalasi dan konfigurasi Symfony2 !

Symfony sendiri memiliki libraries yang utama yang mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini dipakai oleh beberapa Framework lainnya seperti Laravel dan Drupal - See more at: http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php#sthash.LJhifTwZ.dpuf
Symfony sendiri memiliki libraries yang utama yang mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini dipakai oleh beberapa Framework lainnya seperti Laravel dan Drupal - See more at: http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php#sthash.LJhifTwZ.dpuf
Symfony sendiri memiliki libraries yang utama yang mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini dipakai oleh beberapa Framework lainnya seperti Laravel dan Drupal - See more at: http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php#sthash.LJhifTwZ.dpuf
Symfony sendiri memiliki libraries yang utama yang mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini dipakai oleh beberapa Framework lainnya seperti Laravel dan Drupal - See more at: http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php#sthash.LJhifTwZ.dpuf
Symfony sendiri memiliki libraries yang utama yang mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini dipakai oleh beberapa Framework lainnya seperti Laravel dan Drupal - See more at: http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php#sthash.LJhifTwZ.dpuf
Symfony sendiri mempunyai libraries yang utama untuk mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini juga dipakai oleh framework yang lumayan keren seperti laravel dan Drupal.

Selain itu, Symfony juga mempunyai profiler yang terletak di footbar dan muncul hanya pada mode development. Dengan profiler kita bisa melihat proses-proses saat request hingga respone, routing yang dieksekusi, memori yang digunakan, dan lain-lain yang sangat membantu kita dalam menentukan optimasi yang kita inginkan.

Penginstalan dan konfigurasi saya memakai linux Ubuntu. Untuk OS lainnya silahkan menyesuaikan yaa hihi

Instalasi versi 1 
  1. Buka Terminal
  2. Pindah ke web root
  3. $ cd var/www
  4. Install composer
  5.  $ curl -s https://getcomposer.org/installer | php 
  6. Install Symfony Framework
  7. //Tempat Instalasi di /var/www/Symfony
    $ php composer.phar create-project symfony/framework-standard-edition ./Symfony 2.1.7
  8. Cek config server
  9. //Sesuaikan config dengan kebutuhan Symfony, install segala yang diperlukan terlebih dahulu :-)
    http://localhost/Symfony/web/config.php
  10. Dan cek pada browser
  11. http://localhost/Symfony/web/app_dev.php
  12. Cobain demonya
     http://localhost/Symfony/web/app_dev.php/demo/hello/Ganteng 
Instalasi versi 2
  1. Install Composer

  2. sudo apt-get install curl git
    curl -s https://getcomposer.org/installer | php
  3. Install Symfony2 standart edition

  4. sudo apt-get install php5-cli
    php composer.phar create-project symfony/framework-standard-edition ./Symfony2 2.2.1
  5. (untuk OS yang support symbolic Link) Install assets menggunakan symbolic Link pada composer .json
  6. "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web",
        "symfony-assets-install": "symlink"//tambahkan ini :-)
    }
  7. Setting permission
    sudo apt-get install acl
  8. sudo setfacl -R -m u:www-data:rwX -m u:`whoami`:rwX app/cache app/logs
    sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
  9. Check konfigurasi PHP dan sesuaikan

  10. http://localhost/Symfony2/web/config.php
  11. Buka welcome page
  12. http://localhost/Symfony2/web/app_dev.php
  13. Hello world (demo)
  14. http://localhost/Symfony/web/app_dev.php/demo/hello/Symfony2
    Symfony merupakan modular based framework dan decoupling loo , yang artinya komponen dan libraries di dalam symfony dapat dibongkar pasang sesuai hati kita. Tapi untuk para pemula seperti kita tidak dianjurkan karena pemula bisa bongkar gak bisa pasang :p

    Sekian tutorial instalasi dan konfigurasi Symfony2 ini , Semoga Bermanfaat :)
    Salam BeautifulThing!

    sumber : http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php
    Symfony sendiri memiliki libraries yang utama yang mengatur proses request, routing, hingga respon yang disebut Symfony Component. Symfony Component ini dipakai oleh beberapa Framework lainnya seperti Laravel dan Drupal - See more at: http://blog.khodam.org/symfony-2/symfony-framework-instalation-using-composer-and-cli.php#sthash.LJhifTwZ.dpuf