Adrian Nidziński

Adrian Nidziński Student,
Politechnika Łódzka

Temat: [sf 1.4] Zapisywanie wartości zmiennej do pliku...

Witam.
Piszę pewną aplikację internetową i zetknąłem się z problemem. Otóż, chciałbym przy użyciu składni języka PHP zapisać konkretną wartość zmiennej do pliku app.yml. Mam formularz i w nim pole typu input, do którego wpisuję konkretną wartość integer. Próbuję w ten sposób:

$value = '2000000';

sfConfig::set('app_uploadValidators_maxImageFileSize', $value);


Fragment mojego pliku app.yml przedstawia się zaś następująco:

uploadValidators:
maxImageFileSize: 1000000 # Maksymalna wielkość przesyłanego pliku graficznego (w bajtach)


Niestety, nie działa. Ktoś mnie oświeci, gdzie robię błąd.

I na koniec pytanie: co z cache frameworka? Czy po zapisaniu nowej wartości do pliku zostanie ona automatycznie zaczytana w formularzu, czy należy odwołać się do kontrolera i wyczyścić cache?

Proszę o wyrozumiałość i pomoc.Adrian Nidziński edytował(a) ten post dnia 03.03.12 o godzinie 19:37

konto usunięte

Temat: [sf 1.4] Zapisywanie wartości zmiennej do pliku...

sfConfig::set() ustawia Ci tylko wartość jakiejś zmiennej na czas jednego requesta(o ile sie nie myle, to znajduje sie tam po prostu tablica statyczna) - nie mozesz w ten sposob edytowac pliku app.yml;)

Gdy zedytujesz jakis wpis w app.yml to na 90% bedziesz musial przeczyscic cache zeby wartosc zostala poprawnie odczytana.
Adrian Nidziński

Adrian Nidziński Student,
Politechnika Łódzka

Temat: [sf 1.4] Zapisywanie wartości zmiennej do pliku...

Dzięki za odpowiedź.
BTW, znalazłem plugin, który realizuje powyższe zadania: http://www.symfony-project.org/plugins/daYamlEditorPlugin

Nie będę zaczynał nowego wątku, bo to pewnie błahostka, ale nie daję rady z pewną kwestią. Przy użyciu admin generatora wygenerowały mi się odpowiednie formularze do zarządzania artykułami. W prawej kolumnie mam form z filtrami i po wpisaniu odpowiedniej frazy w pole typu input (tytułu artykułu), bądź wyborze statusu z pola typu select, system tworzy listę pasujących do zapytania obiektów i wyświetla je w przystępny sposób. Chciałbym utworzyc na stronie głównej budowanego przeze mnie CMS link (opublikowane artykuły), po kliknięciu którego użytkownik byłby "przekierowywany" do modułu z artykułami i na liście miałby wyświetlone artykuły ze statusem "opublikowane". W jaki sposób "dokleic" odpowiedni kod do adresu url?

Wyobrażam to sobie w ten sposób, że wywołuję odpowiedni filtr mniej więcej w ten sposób:

<a href="article/index?article_filter&published=true"></a>
Grzegorz Śliwiński

Grzegorz Śliwiński Programista python

Temat: [sf 1.4] Zapisywanie wartości zmiennej do pliku...

filtry są ustawiane w sesji, więc musiałbyś stworzyć akcje, która wg. parametrów requesta ustawi parametry sesji, i przekierować na listę, bądź po prostu nadpisać akcję listy w odpowiedni sposób.
Adrian Nidziński

Adrian Nidziński Student,
Politechnika Łódzka

Temat: [sf 1.4] Zapisywanie wartości zmiennej do pliku...

Dzięki serdeczne za podpowiedź.

Dla potomnych - problem rozwiązałem w poniższy sposób:


class articleActions extends autoArticleActions
{
public function executePublished() {
$this->setFilters(array(
'published' => 'true'
));

$this->redirect('@article');
}
}


Link do opublikowanych artykułów:

link_to('Opublikowane artykuły', 'article/published');

Następna dyskusja:

[sf 1.4] Problem z odczytan...




Wyślij zaproszenie do