Mam dwa modele, powiedzmy model1 i model2. Te modele mają dwa wspólne pole i tylko ich potrzebuję w tym przypadku: name i slug. Mam stworzyć widok, w którym będzie 1000 obiektów z paginacją.
Przy małej ilości danych zrobiłem to w ten sposób:

data = list( sorted( chain( model1.objects.all(), model2.objects.all()) ) )
a potem wrzucałem to do Paginatora (paginator = Paginator(data, 1000))

No i wszystko było fajnie przy małej ilości danych,
@jaroslaw-stadnicki: @Jurigag: Nie jest słabe. Baza danych której schemat został przemyślany i zaprojektowany przez specjalistę w zasadzie zostaje otwarta na każdego deva który nie ma pojęcia jak wydajnie zapytać o dane. To brak izolacji. Zupełnie jak mutowalna klasa z publicznymi zmiennymi. Odpowiedzialność w jaki sposób zmieniane są dane powinien być po stronie bazy danych i nikt inny nie powieniem tam grzebać. Ten pattern dziala tylko jak macie w firmie bazodanowców
Cześć Mirki,
od jakiegoś czasu tworzę podcast Backend na Froncie, w którym rozmawiam z gośćmi na tematy programistyczne (zwykle około .NETowe)
Dzisiaj pojawił się odcinek numer 6, w którym razem z Michałem Białeckim odpowiemy na pytanie Dlaczego używamy Entity Framework?

Rozmawialiśmy o tym:
Co to jest orm
Entity Framework czy EF Core
Czy EF Core to jedyna opcja? Jakie są inne współpracujące z .net?
Dlaczego potrzebujemy migracji?
Jak pisać dobre migracje?
Czy
SQLAlchemy ORM vs Peewee - czego teraz warto używać?
Pytam, bo SQLAlchemy ma już swoje lata, a Peewee wygląda na świeższy, acz dojrzały projekt.

Czy jedno lub drugie ma jakieś istotne różnice, które mogą mnie zatrzymać w późniejszym czasie?
Póki co wiem o kiepskim mechanizmie migracji w Peewee.

#python #orm #kiciochpyta
@chester zależy do czego; z tego co kojarzę to peewee zawsze miał być mały i prosty w założeniach. Z tego też względu bym go wybierał przy mniejszych tematach - mniej skomplikowanych, gdzie warstwa danych nie jest wymagająca - i nie dlatego, że się nie da inaczej - ale tak raczej just-in-case żeby się nie okazało, że później nie można. SQLAlchemy zawsze przerażał liczbą możliwych opcji - i ten się wciąż sprawdzi w
@opalczynski: no tak, DRF daje radę. Mi się zachciało spróbować GraphQL, stąd też chciałem spróbować odejść od Django, bo tak naprawdę jedynym elementem Django, którego potrzebuję byłby jego ORM. A kusi mnie też spróbować ASGI :)

Ale kto wie, może wrócę jeszcze z tym do Django :)
Jakim zwierzęciem trzeba być by niszczyć miejskie rowery? Są w Olsztynie około trzech miesięcy, a już bardzo często trafiam na uszkodzone. Ostatnio miał wyłamaną nóżkę, dziś połamany koszyk, normalnie w Olsztynie jak w lesie, albo gorzej. Jedna z najlepszych rzeczy, jakie to miasto zrobiło, ale nie, i tak trzeba #!$%@?ć, bo nie moje.

#olsztyn #wpolscejakwlesie #orm #rower
dwuitownik - Jakim zwierzęciem trzeba być by niszczyć miejskie rowery? Są w Olsztynie...

źródło: comment_UigOAXa1sN6bACIFp2Em7o46IFP49h9d.jpg

Pobierz
@dwuitownik: ostatnio kolega przez te rowery niezłego dzwona zaliczył, w trakcie jazdy kierownica mu centralnie odpadła, nie wiem czy ktoś zostawił taki rower rozwalony, czy specjalnie odkręcił kierownicę, ale koleżka nieźle wywalił orła. Policja też była. Nie wiem jeszcze jak ta sprawa się zakończyła :/
@PrawyKuba: @crine:
npm - pobrania tygodniowo:
- sequalize 215K
- typORM 30K i rośnie

sequalize bardziej popularny ale typeORM dla mnie na pierwszy rzut oka bardziej czytelny (Typescript)
...
jakieś znaczne różniece pomiędzy nimi?
@safuka: dla mnie dużo przyjemniejszy jest typeorm, syntax jest przyjemniejszy (normalnie masz @ManyToOne i inne takie takie, zamiast jakieś dziwne BelongsTo :P), dekoratory + generalnie profity płynące z typescriptu. Ale jest do de facto dość nowy ORM i czasami coś z dupy może nie działać, albo działa inaczej niż myślisz i ciężko ogarnąć co się dzieje. I dokumentacja mogła by być lepsza, często muszę przeglądać kod na gh, żeby mieć pewność
#programowanie #php #serializacja #json #symfony #symfony4 #doctrine #orm

Siema phpmirki,
piszę API RESTowe w Symfony 4 i za pomocą Doctrine pobieram sobie z bazy danych listę obiektów klasy ClassA, która wśród swoich pól prywatnych ma jedno pole typu ArrayCollection i teraz chcę zwrócić wszystko jako JSON, aby miało to strukturę mniej więcej

[
{
"id": 1,
"name" : "Blabla",
"ClassB" : [{
"id": 9,
"name": "Urabura",
"status": 0
} { ...
@nehemiah: dzięki, spojrzę na to i przetestuję. Na co dzień jestem frontendowcem i zazwyczaj korzystam już z gotowego API, ale lubię zdobywać nową wiedzę :P

Może ja coś źle zaprojektowałem i nie powinno się robić takich zagnieżdżeń wielokrotnych? Bo w niektórych widokach, w których będe używał konkretnych obiektów nie będę potrzebował ich wszystkich składowych więc wydaje mi się bez sensu zwracanie ich z serwera i chciałbym mieć wpływ na to która
Mirki z #python - jak komunikować się z bazą danych w kilku wątkach, używając sqlachemy?
Mam obiekt klasy A odpowiadający rekordom w tabeli a, z relacją one-to-many do rekordów z tabeli b (obiekt klasy B). W głównym wątku aplikacji dokonuję operacji na obiekcie A, a w oddzielnym wątku (threading.Thread) tworzę nowe obiekty B, podając im jako argument obiekt A z głównego wątku (żeby zachować odpowiednią relację).
Siema mirki z Python, jaki jest preferowany/właściwy sposób budowania dziedzina dla klas ze sqlalchemy po klasach spoza tej biblioteki?
Chciałbym, aby klasa będąca modelem ORM ze sqlalchemy (powiedzmy User), dziedziczyła po klasie nie będącej takim modelem, powiedzmy Innaklasa z jakiegoś innego modułu. Zamysł jest taki, że metody z Innaklasa operują na danych które wyciągam z SQL używając klasy User. To pozwala na używanie klasy Innaklasa niezależnie od bazy danych.

Problem
#programowanie #dotnet #orm #entityframework
Mireczki mam taką sytuację, że posiadam użytkownika który posiada własne zamówienia (relacja nr.1) i może oglądać zamówienia swoich podopiecznych (relacja 2). Teraz chciałbym użytkownikowi wyświetlić dane z obu relacji w jednym widoku. Teraz jak do tego podejść. Pobrać z bazy danych obiekt użytkownika z dołączonymi obiema listami. (mam na myśli Include z ef, albo fetch z hibernate) i potem przemapować na jakiś view model czy może napisać jakieś
#programowanie #java #spring #hibernate #orm

Mam obiekt, który chcę zapisać w bazie. Obiekt jako id ma inny obiekt (value object). Korzystam z adnotacji @EmbeddedId. Czy to poprawne?
Mam problem podczas generowania id. W adnotacji @GenericGenerator muszę przekazać generator id. Chciałbym aby był on taki jak ten domyślny, czyli automatycznie dodawał jeden do ostatniej wartości w bazie danych (auto increment). Jak to dobrze rozwiązać?

Albo inne podejście. Zamiast użyć @EmbeddedId, zmusić
@kisi3l: Ok, dzięki za pomoc. Właśnie obecnie używam własnego generatora i używam UUID, ale boję się o konflikty. To co podesłałeś jest chyba tym czego szukam, tylko nie wiem jak z wydajnością.
@gajowy_marucha: w doctrine również masz dziedziczenie, tam się dzieje to po abstrakcyjnym typie, który jest podstawą do zbudowania tabeli (nie po Eloquencie, a po "abstrakcyjnej" encji), a następnie dyskryminator doktrynowy sprawia (na podstawie dodatkowej kolumny w tabeli), że hydruje się obiekt odpowiedniej klasy, wedle zadanej wcześniej konfiguracji. Jedna klasa dziedzicząca może posiadać jedną relację, a druga inną. "Fizycznie" pojawią się w tabeli dwie kolumny, ale tylko jedna z nich będzie wykorzystywana
Nowa wersja Hibernate-orm 4.3.9.Final dzisiaj wyszła. Poniżej spam.

1. Znajdź błąd w #hibernate, smutnazaba.jpg
2. Google
3. Wejdź na Jirę hibernate i znajdź bug report z września ubiegłego roku, notokoniec.png
4. Status:CLOSED O_o
5. Ostani komentarz z wczoraj o treści "Closing in preparation of releasing 4.3.9.Final and 4.2.19.Final."
6. Hura.avi
7. Wejdź na stronę Hibernate, wersja 4.3.9.Final wydana dzisiaj.
8. Aktualizacja zależności
9. Działa. Euforia.gif

Dla zainteresowanych, tworząc EntityGraph z sub
@Crisu: Jeśli ma być przenośność między różnymi bazami to można próbować z ORM - oraz gdy część zapytań musi być generowana dynamicznie. Inaczej proponuję użyć sql-a bezpośrednio.
Pytanie architektoniczne a i może takie o właściwą implementację.

Mam ja klasę Rodzic, kolekcja @OneToMany dla Dzieci. Jednak chciałbym aby Rodzic nie miał standardowego gettera getDzieci() tylko sparametryzowany getDzieci(String imie).

Nie chcę pobierać wszystkich dzieci rodzica a potem filtrować bo nie dość, że już ORM zarzyna apkę to jeszcze chciałbym aby nikt przez pomyłkę po mnie nie pobrał wszystkich Dzieci danego rodzica. Oczywiście od biedy mogę zostawić oryginalny getter i oznaczyć go