Ne çoklu uygulamalar kullanılabilir bir şablon için en iyi yer neresidir?

3 Cevap php

Backend ve önyüz: benim Symfony çerçevesinde 2 uygulamalar var.

Bu iki uygulama tarafından kullanılmakta olan şablonlar olması mümkündür?

Ve eğer öyleyse, o şablonu koymak için en iyi yer nedir?

3 Cevap

Ben geçmişte bu üstesinden oldum tek yolu paylaşılan parçalar için bir eklenti oluşturmak olmuştur.

IE: denilen eklentileri altında bir klasör oluşturun

TemplatesPlugin

Bunun içinde, bir modüller klasör oluşturun ve bu içinde, düzenli bir modül klasör yapısını oluşturun.

Bir şablon yolu örneği:

sf_root/plugins/TemplatesPlugin/modules/book/pageSuccess.php
sf_root/plugins/TemplatesPlugin/modules/book/_title.php

(Aksi takdirde zaten orada olmalı eklentileri diziye eklemek gerekir, sen enableAllPluginsExcept kullanıyorsanız o olacak) eklenti config / ProjectConfiguration.class.php etkin olduğundan emin olun.

Daha sonra, örneğin, bu şablonları başka bir şablon olarak erişebilirsiniz:

include_partial('book/title', array('title'=>'hello'));

Bu kesmek biraz hissediyor olsa da, oldukça iyi çalışıyor.

Bir eklenti kullanarak daha basit bir yolu var: this post bakabilirsiniz.

O sadece uygulama yapılandırma uzanan apps/appName/config/appNameConfigurations.class.php edilir:

class appNameConfiguration extends sfApplicationConfiguration {

  public function configure() {
    sfConfig::set('sf_app_template_dir', sfConfig::get('sf_root_dir') . '/templates');
  }

}

Bu yaklaşım bana temiz görünüyor. Bu symfony şablonları arar yolunu genişleten ya da sadece ayarlar eğer ben sadece bilmiyorum.

(Ben zaten "symfony için Definitive Guide" okudum) Henüz Symfony uzmanı değilim, ben bir hata yapabilir.

Farklı uygulamalar için ortak şablonları hakkında resmi belgelerde söz yoktur. Ortak şablonlar için en uygun dizin within single application apps / templates / olduğunu.

Maybe someone knows the answer. It will be interesting to read. Good luck.