Projekt

Obecné

Profil

Požadavek #943

otevřený

Zakázání automatického načítání sloupce v ORM

Přidáno uživatelem Michal Kliment před více než 9 roky(ů). Aktualizováno před více než 9 roky(ů).

Stav:
Odeslaný
Priorita:
Normální
Přiřazeno:
Kategorie:
Jádro systému
Cílová verze:
Začátek:
2014-10-10
Uzavřít do:
% Hotovo:

100%

Odhadovaná doba:

Popis

ORM automaticky načítá všechny sloupce z tabulky, což např. u některých sloupců typu BLOB může způsobovat výkonnostní problémy.

Implementace:

ORM již obsahuje attribut ignored_columns. K těmto sloupcům pak nefungují metody __get a __set (vrací null), bohužel se stále načítají na úrovni DB. Stačí pouze upravit správně metodu load_result, která načítá data z DB do objektu, aby se nevybíraly všechny sloupce.

Aktualizováno uživatelem Michal Kliment před více než 9 roky(ů)

  • Popis aktualizován (rozdíl)
  • Přiřazeno nastaven na Michal Kliment

Aktualizováno uživatelem Michal Kliment před více než 9 roky(ů)

  • Stav změněn z Nový na Odeslaný
  • % Hotovo změněn z 0 na 100

Aktualizováno uživatelem Ondřej Fibich před více než 9 roky(ů)

Implementace vypadá OK, jen ten array_diff nebude vždy funkční, protože sloupce v SQL jsou case insensitive.
Správně by se teda mělo aplikovat na obě pole array_map('mb_strtolower', ...).

Je na tobě, jestli to chceš opravit, jelikož ve FN používáme jen lower cased názvy sloupců.
Pokud nechceš, tak to můžeš uzavřít.

Také k dispozici: Atom PDF