Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] Własne środowiko (inne niż 'prod', 'dev' i 'test'), ... nie działa :(
Cezar708
post
Post #1





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


cześć

mam mały problem związany z nowym środowiskiem..

plik używający środowiska myenv to:

myenv.php:
  1. <?php
  2. require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php');
  3. $configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'myenv', true);
  4. sfContext::createInstance($configuration)->dispatch();
  5. ?>


Następnie chciałbym "pokonfigurować" to środowisko i zacząłem od app/frontend/config/view.yml:
Kod
default:
  # ...
  has_layout:     on
  layout:         main

# moje ustawienia
myenv:
  has_layout:     off
  layout:         ~


przeczyściłem cache, i odpaliłem w celu sprawdzenia za pomocą linka:
Kod
http://sftest/myenv.php


... oczywiście rezultat był taki, że layout main.php się załadował, czyli inaczej niż w ustawieniach środowiska myenv.

Pomóżcie i powiedzcie mi co robię nie tak. Wg dokumentacji wszystko powinno pójść prosto za pomocą ustawień we frontcontrollerze myenv.php... jednakże rzeczywistość jest zupełnie inna.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
destroyerr
post
Post #2





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Nie kojarzę w dokumentacji żadnego tekstu, który by mówił, że w pliku view.yml można konfigurować coś na podstawie środowiska. Może przeoczyłem ale:
Klucz default oznacza, że dla każdego widoku zostaną ustawione podane parametry. Twój klucz: myenv oznacza, że dla widoku o tej samej nazwie layout nie zostanie załączony.
Go to the top of the page
+Quote Post
Cezar708
post
Post #3





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


OK, w takim razie jak zrobić, (najwygodniej chyba na podstawie środowiska) aby domyślnie był layout wyłączony?

Oczywiście zmiana w default: na has_layout: off nie wchodzi w grę, ponieważ inne środowiska tego wymagają.

generalnie "na szybko zrobiłem coś w ten deseń:

  1. <?php
  2. class myActions extends sfAction {
  3. public function execute($request)
  4. {
  5. if($this->getContext()->getConfiguration()->getEnvironment() == 'myenv') {
  6. // wylaczenie layoutu dla tego typu srodowiska
  7. $this->setLayout(false);
  8. }
  9. return parent::execute($request);
  10. }
  11. }
  12. ?>


i oczywiście wszystkie akcje dziedziczą po myActions... jakoś to działa... ale to chyba nie jest do końca dobrze co?
Go to the top of the page
+Quote Post
qqrq
post
Post #4





Grupa: Zarejestrowani
Postów: 418
Pomógł: 8
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(Cezar708 @ 25.08.2008, 15:23:38 ) *
cześć

mam mały problem związany z nowym środowiskiem..

plik używający środowiska myenv to:

myenv.php


A nie powinno być "<nazwa_aplikacji>_myenv.php"? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 19:49