abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 08:08 | Zajímavý článek
    Nepálský ISP WorldLink Communications popisuje sedm let zavádění IPv6. Dnes provozuje přes milion IPoE přípojek, všechny s podporou IPv6, a přibližně 70 % provozu přenáší přes IPv6.… více »
    vencour | Komentářů: 0
    dnes 02:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.2 oznámil Linus Torvalds vydání Linuxu 7.3. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.

    Ladislav Hagara | Komentářů: 0
    včera 23:39 | Bezpečnostní upozornění
    Zjištěna zranitelnost v kernelu projevující se při virtualizaci. Nejde tedy o chybu samotného KVM ani konkrétního poskytovatele cloudu, ale o problém v linuxovém zpracování IPv4 paketů, který se může týkat různých virtualizačních a sandboxových prostředí. Více např. na hacker.news - Critical PwnEscape Linux Kernel Vulnerability Lets Guest VMs Read Host Memory. Aktualizace jsou k dispozici.
    vencour | Komentářů: 0
    včera 23:38 | Bezpečnostní upozornění
    Malware napsaný v Go se šíří mezi linuxovými systémy, pokouší se získávat SSH klíče a využívá kompromitované stroje pro těžbu kryptoměn. Autor použil FakeNet-NG a Wireshark k analýze síťové komunikace. Popsal také indikátory kompromitace a možnosti obrany. Zajímavé je propojení SSH bezpečnosti, analýzy síťového provozu a detekce prostřednictvím SIEM. více
    vencour | Komentářů: 0
    16.10. 15:55 | Nová verze

    Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 9.00. S podporou architektury AArch64 (ARM64).

    Ladislav Hagara | Komentářů: 0
    16.10. 03:44 | IT novinky

    Společnost Fairphone stojící za stejnojmennými mobilními telefony představila (pdf) bezdrátová špuntová sluchátka Fairbuds 2. Opravitelná, s vyměnitelnými bateriemi a tříletou zárukou. Cena 119 eur.

    Ladislav Hagara | Komentářů: 16
    16.10. 03:33 | Pozvánky

    O víkendu 17. a 18. října lze na brněnském výstavišti navštívit s jednou vstupenkou dvě akce: Maker Faire Brno, festival inovací, kreativity a kutilství, a GameDev Connect, akci určenou pro všechny současné a hlavně budoucí herní vývojáře.

    Ladislav Hagara | Komentářů: 0
    15.10. 20:33 | Nová verze

    Canonical vydal (email) Ubuntu 26.10 Stonking Stingray. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2027.

    Ladislav Hagara | Komentářů: 1
    15.10. 16:44 | IT novinky

    České Radiokomunikace (CRA) ve čtvrtek odstřelily rozhlasový vysílač Liblice B, dosud nejvyšší stavbu v Česku. O demolici dvou 355 metrů vysokých stožárů rozhodly z důvodu jejich nevyužívání, už v úterý přitom zhasly a demontovaly jejich osvětlení.

    Ladislav Hagara | Komentářů: 32
    15.10. 02:44 | IT novinky

    Microsoft Defender nově podporuje linuxové desktopy.

    Ladislav Hagara | Komentářů: 18
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2866 hlasů
     Komentářů: 32, poslední 11.10. 17:02
    Rozcestník

    Dotaz: Laravel - razeni podle vnorenych vztahu

    31.5.2024 16:02 Petr
    Laravel - razeni podle vnorenych vztahu
    Přečteno: 1861×
    Dobry den,

    mam nasledujici modely:
    Country hasMany cities()
    City    hasMany streets()
    Street  hasMany houses()
    
    House  belongsTo street()
    Street belongsTo city()
    City   belongsTo country()
    
    A ted se snazim do modelu Country pridat metodu houses(), ktera mi vrati pole vsech House modelu v dane Country.

    Dopracoval jsem se k tomuto:
    public function houses(): Builder
    {
        $houses = House::whereHas('street', function($query) {
            $query->whereHas('city', function($query) {
                $query->where('cities.country_id', $this->id);
            });
        });
        
        return $houses;
    }
    
    Coz mi sice funguje, ale za boha nejsem schopny prijit na to, jak ty vracene modely nejprve seradit podle cities.name, potom podle streets.name a nakonec podle houses.number

    Dekuji za pripadnou pomoc

    Odpovědi

    31.5.2024 16:17 Petr
    Rozbalit Rozbalit vše Re: Laravel - razeni podle vnorenych vztahu
    Ja se picnu! Vzdycky se mi rozsviti, az kdyz se zeptam.

    Takze reseni je napr. toto:
    public function houses(): Builder
    {
        $houses = House::leftJoin('streets', function($join) {
            $join->on('houses.street_id', 'streets.id')->leftJoin('cities', function($join) {
                $join->on('streets.city_id', 'cities.id')->where('cities.country_id', $this->id);
            });
        })
        ->orderBy('cities.name')
        ->orderBy('streets.name')
        ->orderBy('houses.number');
        return $houses;
    }
    
    Omlouvam se, za zbytecny dotaz.
    31.5.2024 16:30 Petr
    Rozbalit Rozbalit vše Re: Laravel - razeni podle vnorenych vztahu
    Takhle je to mozna jeste lepsi (vzhledem k vyslednemu SQL dotazu):
    public function houses(): Builder
    {
        $houses = House::leftJoin('streets', function($join) {
            $join->on('houses.street_id', 'streets.id');
        })
        ->leftJoin('cities', function($join) {
            $join->on('streets.city_id', 'cities.id');
        })
        ->where('cities.country_id', $this->id)
        ->orderBy('cities.name')
        ->orderBy('streets.name')
        ->orderBy('houses.number');
        
        return $houses;
    }
    

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.