Archiwum

Posty oznaczone ‘lazy load’

Propel: lazyLoad

Styczeń 31st, 2009 zergu Brak komentarzy

Użycie LazyLoadingu w Propelu jest bardzo proste, jednak słabo udokumentowane. Polega ono na dodaniu lazyLoad: true w schemacie bazy danych (dla wybranych kolumn). Przykładowy fragment schematu:


  images:
    _attributes: { phpName: Image }
    id: { type: serial }
    data_large: { type: blob, lazyLoad: true }
    data_small: { type: blob, required: true, lazyLoad: true }
    …


Czym jest LazyLoad?

Dla nieznających tego mechanizmu wyjaśnienie. LazyLoad to technika stosowana w warstwie modelu dla wybranych kolumn tabeli. Atrybuty oznaczone do LazdyLoadingu pobierane są tylko i wyłączenie, gdy nastąpi jawne zapytanie o nie. Przykładowo (bazując na powyższym kawałku schematu), podczas wyszukiwania zdjęć, chcemy dostać miniaturki wyników — jednak bez tego mechanizmu pobrane byłyby również duże wersje zdjęć, które w aktualnym widoku nie są potrzebne, a to może bardzo spowolnić wygenerowanie strony.

Kategorie:Symfony Tagi:, ,