Basit Bir Web Uygulaması Oluşturma
Bu bölüm, Symfony çerçevesinde basit bir uygulamanın nasıl oluşturulacağını açıklar. Daha önce tartışıldığı gibi, Symfony'de nasıl yeni bir proje oluşturacağınızı biliyorsunuz.
"Öğrenci" detaylarına bir örnek verebiliriz. Aşağıdaki komutu kullanarak “öğrenci” adında bir proje oluşturarak başlayalım.
symfony new student
Komutu çalıştırdıktan sonra boş bir proje oluşturulur.
Kontrolör
Symfony, Model-View-Controller (MVC) geliştirme modeline dayanmaktadır. MVC, uygulama mantığını sunumdan ayıran bir yazılım yaklaşımıdır. Controller, Symfony Framework'de önemli bir rol oynar. Bir uygulamadaki tüm web sayfalarının bir kontrolör tarafından ele alınması gerekir.
DefaultController sınıf yer almaktadır “src/AppBundle/Controller”. Orada kendi Controller sınıfınızı oluşturabilirsiniz.
Konuma git “src/AppBundle/Controller” ve yeni bir StudentController sınıf.
Aşağıdakiler için temel sözdizimi StudentController sınıf.
StudentController.php
namespace AppBundle\Controller;
use Symfony\Component\HttpFoundation\Response;
class StudentController {
}
Şimdi bir StudentController oluşturdunuz. Bir sonraki bölümde, Kontrolör hakkında daha ayrıntılı olarak tartışacağız.
Rota Oluşturun
Denetleyici oluşturulduktan sonra, belirli bir sayfa için yönlendirmemiz gerekir. Yönlendirme haritaları, belirli bir denetleyicinin yöntemine URI talep eder.
Yönlendirme için temel sözdizimi aşağıdadır.
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class StudentController {
/**
* @Route("/student/home")
*/
public function homeAction() {
return new Response('Student details application!');
}
}
Yukarıdaki sözdiziminde, @Route(“/student/home”)rota. Sayfanın URL modelini tanımlar.
homeAction() Sayfayı oluşturabileceğiniz ve bir Response nesnesi döndürebileceğiniz eylem yöntemidir.
Önümüzdeki bölümde yönlendirmeyi ayrıntılı olarak ele alacağız. Şimdi "http: // localhost: 8000 / öğrenci / ev" url'sini isteyin ve aşağıdaki sonucu verir.