Welcome to the Cookbook

loading...

1.3 Memahami Model-View-Controller

CakePHP mengikut MVC corak rekabentuk perisian (design pattern). Pengaturcaraan menggunakan MVC bagi memisahkan permohonan anda kepada tiga bahagian utama :

  1. Model mewakili data penggunaan
  2. View menyebabkan satu penyampaian bagi memperagakan data
  3. Controller mengawal dan memesongkan permintaan laluan-laluan dibuat oleh pelanggan
Figure 1

Rajah: 1: Satu Asas Permintaan MVC

Rajah 1 : menunjukkan satu contoh tulang-tulang (bare-bones) permintaan MVC dalam CakePHP. Untuk mengilustrasi, menganggap seorang pelanggan berjudul bernama "Ricardo" mengklik “Buy A Custom Cake Now!” menghubungkan pada aplikasi laman web anda.

  • Ricardo klik kepada pautan http://www.example.com/cakes/buy, dan pelayarnya membuat satu permintaan untuk jaringan pelayan anda.
  • Penghantar itu memeriksa permintaan URL (/cakes/buy), dan memberi permintaan itu kepada controller yang betul.
  • Controller itu menjalankan permohonan logik yang khusus. Sebagai contoh, ia mungkin memeriksa bagi melihat jika Ricardo telah log masuk.
  • Controller juga menggunakan model mendapatkan akses kepada data permohonan itu. Model biasanya mewakili pangkalan data mengemukakan, tetapi mereka boleh juga mewakili LDAP catatan, RSS feeds, atau fail - fail pada sistem. Dalam contoh ini, controller akan menggunakan model untuk mengambil pembelian terdahulu Ricardo data pangkalan data.
  • Setelah controller menghasilkan magik kepada data, ia menghantar kepada view. View akan mengambil data dan menyediakannya kepada pengguna. Views dalam CakePHp kebiasaannya menggunakan format HTMl, tetapi view juga boleh menghasilkan PDF, dokumen XML atau objek JSON bergantung kepada keperluan anda.
  • Setelah view menggunakan data dari controller untuk menghasilkan view, kandungan di dalam view akan dipulangkan kepada pelayar Ricardo.

Hampir semua permintaan aplikasi anda akan mengikut corak asas ini. Kami akan menambah maklumat terperinci kemudian yang lebih spesifik kepada CakePHP, maka sematkan di dalam minda, semasa kita teruskan.ni.