/ Kontrolör ve / kontrolör arasındaki fark


43

Her şeyden daha teorik, yaş için sormak istediğim bir soru.

Normal Magento modül dosya yapısını kullanarak Eklentiler geliştirme konusunda tamamen bilgiliyim. Bazı Mage 'uzantılarına' bakarken, bazılarının bir / Controller dizini içerdiğini fark ettim. Bu kontrolörlerin amacı nedir ve / kontrolör direktöründe normal olarak kullanılanlardan ne farkı vardır?

İsimlerin farklı bir şekilde yapılandırıldığını görebiliyorum, bu yüzden farklı bir şekilde otomatik olarak yüklendiklerini topluyorum, ancak / Controller sınıfları hangi amaca hizmet ediyor?

Hepinize teşekkürler

Yanıtlar:


45

Fark, sizin dediğiniz gibi otomatik yüklemede. Genelde / Denetleyici olan dosyalar, / denetleyicilerdeki sınıfların devraldığı Soyut (veya üst) sınıflardır .

Magento / Controller dizininden haberdar olmak için oluşturulmamıştır - bu daha çok bir kongre meselesidir. Sınıf adları, bu ebeveynleri diskte nerede bulacağına dair ipucu verir ve otomatik yükleyici onları bulur. Bunu göreceksiniz Mage_Sales:

class Mage_Sales_OrderController extends Mage_Sales_Controller_Abstract

Burada satış içindeki bulur denetleyicileri modülü app/code/core/Mage/Sales/controllersve yüklenen kontrolör bulmak için otomatik yükleyici diyor 's in ebeveyni app/code/core/Mage/Sales/Controller.

Bu, endişelerin ayrılmasını sağlamak ve somut denetleyici sınıflarının ortak işlevselliği miras almasına izin vermek için yapılır.


Bu tamamen mantıklı geliyor ve şimdi açıkladınız, aslında oldukça açık görünüyor! Teşekkürler Phil!
thebluefox
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.