![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 3 Dołączył: 27.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Załóżmy, że mam sobie forum, jest tam mnóstwo opcji: ile postów na strone, ile tematów na strone, ile najnowszych (dla prostoty zakładamy, że są to ustawienia globalne a nie per user) Jak najlepiej zrobić aby te ustawienia dało się zmieniać przez backend? Czy robić edycję pliku app.yml, czy może trzymać to w bazie (opt_name,opt_value) - jednak pytanie za każdym razem bazy nie byłoby chyba zbyt wydajne? Może są jakieś sprawdzone sposoby radzenia sobie z takimi rzeczami? // może być również rozwiązenie per user - ale tutaj chyba tylko baza? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 5 Dołączył: 29.03.2006 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Osobićie napisał bym filtr który przy pierwszy wywołaniu pobiera te dane (tylko raz) i ustawia je w sesji użytkownika, później już pozostaje tylko odczytanie ich i przekazanie do modelu już z sesji a nie bazy.
|
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Co do cache, to nie wiem, bo sam się zastanawiam, ale jeśli chodzi o sam konfig, to po prostu łączę tablicę sfConfig z konfigiem z bazy nadpisując istniejące klucze. Wszystko w filtrze.
Kod app_config: _attributes { phpName: AppConfig } id: category: { type: varchar, size: 255, default: default } key: { type: varchar, size: 255, unique: true } value: { type: varchar, size: 255 } display_name: { type: varchar, size: 255 } info: { type: longvarchar } is_special: { type: boolean, default: false } is_active: { type: boolean, default: true }
Pozdrawiam. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 14:53 |