Reklama
Strona 326 z 358 PierwszaPierwsza ... 226276316324325326327328336 ... OstatniaOstatnia
Pokazuje wyniki od 4,876 do 4,890 z 5367

Temat: Programowanie - temat ogólny

  1. #4876
    Avatar doniuu
    Data rejestracji
    2015
    Posty
    57
    Siła reputacji
    9

    Domyślny

    Cytuj Maro14 napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Pany uczę się powoli pisać zapytania w sqlu i napotkałem mały problem. Mam znaleźć Produkty, które sprzedały się w ilości powyżej 500 sztuk. Wyświetlić alfabetycznie wg kategorii i malejąco wg ilości wynik. Wszystko fajnie działa tylko nie wiem jak napisać warunek z ilością. Wpisując Where IloscZamowien > 500 wyskakuje błąd (Invalid column name). Pogrupować wyniki po tej nazwie kolumny mogę ale warunku napisać już nie. Co robię źle ?

    Kod PHP:
    Select ProductName, CategoryName,SUM(Quantity) as IloscZamowien 
    from dbo.Products as P inner join dbo.Categories as C ON p.Categoryid=c.categoryID
    	inner join dbo.OrderDetails as O ON p.productid=o.productid
    	group by  ProductName,CategoryName 
    	order by CategoryName desc,IloscZamowien desc
    musisz uzyc HAVING -- agregowanie wykonuje sie wraz GROUP BY'em, wiec na etapie wyciagania wierszy z bazy nie mozesz sie do tego odwolac w klauzuli WHERE.

    edit:

    jako ze jak widac z trzema osobami scigalem sie o to, kto pierwszy odpowie, to dorzuce w poscie cos jeszcze. otoz na ircu zadalem dosc proste pytanie:

    Kod:
    (1)     let mut result = None;
            for child in &self.children {
                result = child.find(&path);
                if result.is_some() { break }
            }
            result
            
    (2)     self.children
                .iter()
                .map(|x| x.find(&path))
                .skip_while(|x| x.is_none())
                .nth(0)
                .unwrap_or(None)
    ktory kawalek kodu preferujecie? :) w tym jezyku operacje na iteratorach wykonywane sa leniwie, wiec oba snipetty daja ten sam efekt.
    Ostatnio zmieniony przez doniuu : 29-12-2016, 21:20

  2. #4877
    Avatar Ilufus Knight
    Data rejestracji
    2009
    Położenie
    Hajnówka
    Wiek
    29
    Posty
    458
    Siła reputacji
    16

    Domyślny

    Kod:
    (1)     let mut result = None;
            for child in &self.children {
                result = child.find(&path);
                if result.is_some() { break }
            }
            result
            
    (2)     self.children
                .iter()
                .map(|x| x.find(&path))
                .skip_while(|x| x.is_none())
                .nth(0)
                .unwrap_or(None)
    ktory kawalek kodu preferujecie? :) w tym jezyku operacje na iteratorach wykonywane sa leniwie, wiec oba snipetty daja ten sam efekt.
    Jak dla mnie (2) wygląda bardziej przejżyście

  3. Reklama
  4. #4878
    Avatar doniuu
    Data rejestracji
    2015
    Posty
    57
    Siła reputacji
    9

    Domyślny

    skonczylem na czyms zupelnie prostszym:

    Kod:
            for child in &self.children {
                if let Some(tree) = child.find(&path) {
                    return Some(tree)
                }
            }
            None
    problem byl taki, ze calkowicie zapomnialem o early returnach z funkcji -- a czulem ze mi czegos brakuje piszac pierwszy snippet. :D

  5. #4879
    Avatar Terr
    Data rejestracji
    2004
    Położenie
    Venore
    Posty
    1,993
    Siła reputacji
    22

    Domyślny

    (1) jest chyba czytelniejsza, szczególnie dla nie-funkcyjnych świrów ale (2) jest o wiele ładniejsza



    (sam też wolałbym napisać coś w stylu 2 :P)

  6. #4880
    Avatar Rollercoster
    Data rejestracji
    2011
    Wiek
    29
    Posty
    1,247
    Siła reputacji
    14

    Domyślny

    Cytuj Terr napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    ale (2) jest o wiele ładniejsza
    pod jakim względem?

    czytelność ponad wszystko <3

    @edit

    w sumie to 2 też spoko, ale co to ma robić?
    >.nth(0)
    Ostatnio zmieniony przez Rollercoster : 30-12-2016, 17:44

  7. #4881
    Avatar doniuu
    Data rejestracji
    2015
    Posty
    57
    Siła reputacji
    9

    Domyślny

    Kod:
    fn nth(&mut self, n: usize) -> Option<Self::Item>
    Returns the nth element of the iterator.

    Note that all preceding elements will be consumed (i.e. discarded).

    Like most indexing operations, the count starts from zero, so nth(0) returns the first value, nth(1) the second, and so on.

    nth() will return None if n is greater than or equal to the length of the iterator.
    btw, zamiast skip_while mozna tam rowniez uzyc filter, co znowu dziala tak samo ze wzgledu na leniwosc iteratorow.

    edit: imo najladniejszy jest 3ci snippet.
    Ostatnio zmieniony przez doniuu : 31-12-2016, 13:59

  8. #4882
    Avatar Butek
    Data rejestracji
    2007
    Posty
    656
    Siła reputacji
    17

    Domyślny

    Ma ktoś gdzieś jakoś ładnie rozrysowane te wszystkie platformy w .NET? Jakieś wprowadzenie teoretyczne? Czym do cholery się różni jedno od drugiego.

    Mam do zrobienia serwis webowy, mam pełno poradników, web service -> pisze kilka funkcji -> tu mam dodać kilka kontrolek(?) za pomocą windows forms, ale nie mam tego w vs2015, ponoć jest przestarzałe. Szukam zamiennika, czytam o WPF, dalej nic, nie mam tego w vs2015(mam jakieś 3 template online ale za cholere nie wiem który wybrać(viewmodel, usercontrol czy datawindow). Czego ja mam do cholery użyć i czym to się różni od tych wszystkich web forms, asp.net mvc i tak dalej?

    @
    Znalazłem coś jak to zrobić w web formsach(@teraz czytam, że mvc to następca web formsów -.-), ale z tego co widzę wynik końcowy i robota prawie niczym się nie różni od WPF i windows forms ktoś coś?

    @Z zadaniem sobie poradziłem tym sposobem, ale nadal proszę o wprowadzenie teoretyczne ;d
    Ostatnio zmieniony przez Butek : 01-01-2017, 17:44

  9. #4883
    Avatar Adrino
    Data rejestracji
    2006
    Położenie
    Wrocław
    Wiek
    29
    Posty
    975
    Siła reputacji
    18

    Domyślny

    Koduje może ktoś w Javie używając JPA?

    Zastanawiam się czy przy wyciąganiu rekordu z bazy danych muszę w każdej metodzie otwierać nowego EntityManagera? Czy może da się go jakoś wstrzyknąć używając np. Springa?

  10. #4884
    Avatar Rollercoster
    Data rejestracji
    2011
    Wiek
    29
    Posty
    1,247
    Siła reputacji
    14

    Domyślny

    Cytuj Adrino napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Koduje może ktoś w Javie używając JPA?

    Zastanawiam się czy przy wyciąganiu rekordu z bazy danych muszę w każdej metodzie otwierać nowego EntityManagera? Czy może da się go jakoś wstrzyknąć używając np. Springa?
    Nie musisz, najlepiej jak sam nie będziesz zarządzał transakcjami dopóki tego nie potrzebujesz, a jeszcze nie mialem chyba przypadku w którym tego potrzebowałem.

    Zależy jaki masz config springa(xml vs java config), tutaj masz dobry przykład:
    http://www.baeldung.com/the-persiste...jpa#javaconfig

    Później w swojej warstwie dostępu do danych dodajesz @PersistenceContext EntityManager entityManager; + @Transactional w odpowiednich warstwach i pchasz ten wózek dalej :)

    Jak chcesz więcej info to wrzuć kod swojego DAO lub Repo + konfig springa.

  11. #4885
    Avatar Adrino
    Data rejestracji
    2006
    Położenie
    Wrocław
    Wiek
    29
    Posty
    975
    Siła reputacji
    18

    Domyślny

    Cytuj Rollercoster napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Nie musisz, najlepiej jak sam nie będziesz zarządzał transakcjami dopóki tego nie potrzebujesz, a jeszcze nie mialem chyba przypadku w którym tego potrzebowałem.

    Zależy jaki masz config springa(xml vs java config), tutaj masz dobry przykład:
    http://www.baeldung.com/the-persiste...jpa#javaconfig

    Później w swojej warstwie dostępu do danych dodajesz @PersistenceContext EntityManager entityManager; + @Transactional w odpowiednich warstwach i pchasz ten wózek dalej :)

    Jak chcesz więcej info to wrzuć kod swojego DAO lub Repo + konfig springa.
    @Rollercoster ;
    Dzięki za odpowiedź! :)

    Właśnie od jakiegoś czasu uczę się tworzenia webowych aplikacji poprzez właśnie tworzenie swojej. Dodatkowo chcę to wykorzystać jako projekcik do CV, bo chciałbym się w niedalekiej przyszłości załapać na jakiś staż/juniora, zależnie od tego co się trafi.

    Config springa (xml):
    <?xml version="1.0" encoding="windows-1250"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:tx="http://www.springframework.org/schema/tx"

    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schem...-beans-2.5.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schem...ontext-2.5.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schem...ng-mvc-3.0.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schem...ing-tx-3.0.xsd
    ">
    <context:component-scan base-package="db_objects"></context:component-scan>
    <mvc:annotation-driven />
    <!--tx:annotation-driven transaction-manager="core.txManager" /-->

    <context:component-scan base-package="controllers"/>

    <bean id="viewResolver" class="org.springframework.web.servlet.view.Intern alResourceViewResolver">
    <!--property name="viewClass" value="org.springframework.web.servlet.view.JstlVi ew"></property-->
    <property name="prefix" value="/WEB-INF/jsp/"></property>
    <property name="suffix" value=".jsp"></property>
    </bean>

    <bean id="messageSource"
    class="org.springframework.context.support.Resourc eBundleMessageSource">
    <property name="basename" value="messages" />
    </bean>
    CustomerDAO (jak widać tutaj za każdym razem wywołuję tego EntityManagera gdy go potrzebuję. Dobrze wiedzieć, że da się to zrobić bardziej automatycznie :)
    import java.util.List;

    import javax.persistence.EntityManager;
    import javax.persistence.EntityManagerFactory;
    import javax.persistence.Persistence;
    import javax.persistence.TypedQuery;

    import org.springframework.stereotype.Component;

    import db_objects.Customer;

    @Component
    public class CustomerDAO {

    public void addCustomerToDatabase(Customer newCustomer) {
    EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("library-manager");
    EntityManager entityManager = entityManagerFactory.createEntityManager();

    entityManager.getTransaction().begin();
    entityManager.persist(newCustomer);
    entityManager.getTransaction().commit();

    entityManager.close();
    entityManagerFactory.close();
    }

    public List<Customer> getAllCustomers()
    {
    EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("library-manager");
    EntityManager entityManager = entityManagerFactory.createEntityManager();

    TypedQuery<Customer> query = entityManager.createQuery("select e from Customer e", Customer.class);
    List<Customer> customers = query.getResultList();
    entityManager.close();
    entityManagerFactory.close();

    return customers;
    }
    }
    Jeśli nie masz nic przeciwko i znalazłbyś kiedyś chwilę na rzuceniem okiem na projekt to chętnie posłuchałbym opinii nt. czytelności kodu i nad czym powinienem popracować (jak mówiłem, chciałbym żeby to kiedyś trafiło do potencjalnych pracodawców), a obecnie aplikacja jest relatywnie mała bo dodaję nowe elementy na bieżąco ucząc się je wykorzystywać.
    Także proszę daj znać, mogę podesłać link do githuba na priv. :)
    Ostatnio zmieniony przez Adrino : 06-01-2017, 18:57

  12. #4886
    Avatar Rollercoster
    Data rejestracji
    2011
    Wiek
    29
    Posty
    1,247
    Siła reputacji
    14

    Domyślny

    Pewnie zaraz ktoś napisze że możesz użyć Spring Boota i Spring Data JPA. Tym tandemem ograsz każdy twój use case w kilku linijkach kodu, ale nie rób tego. Dopóki nie ogarniesz filozofii springa, konfiguracji itd. to lepiej żebyś jak to się robiło kiedyś (i w sumie nadal robi w starszych appkach). Kiedyś tutaj wspomniałem że pierwszy raz springa stawiałem ze dwa tygodnie, ale nie żałuję. Piękne czasy :)

    Co do twojej appki:
    Na samym początku musisz się zdecydować czy chcesz mieć konfiguracje springa i beanów w XMLu(tak jak teraz) czy chcesz to mieć w kodzie javowym, wygląda to mniej więcej tak jak w tym linku który wrzuciłem wyżej.

    Widzę, że ty używasz XMLa i adnotacji co się zdarza i jest dozwolone, nawet w moim projekcie tak jest, ale porzuciłbym na razie XMLa - ale jeżeli chcesz nadal to możesz zrobić identycznie jak tutaj: http://www.baeldung.com/the-persiste...-jpa#xmlconfig
    To jest ten sam link co wyżej, masz tam pokazane jak stworzyć potrzebne beany (datasource, entity manager factory, transaction manager) w XMLu. Plink persistence context xml już nie będzie ci potrzebny.

    Po takim zabiegu + dodaniu adnotacji @Transactional cały boilerplate metody addCustomerToDatabase() może być zastąpiony jedną♥linijką:
    entityManager.persist(newCustomer);

    Generalnie transakcje w springu to nie jest łatwa kwestia, ale jeżeli potrzebujesz czegoś tak prostego to na początku @Transactional na metodzie w DAO jest jak najbardziej ok.

    Oprócz tego możesz DAO oznaczyć jako @Repository a nie @Component. Sama zmiana na razie nic nie powoduje oprócz tego że bezpośrednio, przez adnotacje, mówić za co odpowiada twoja klasa (repository != dao, ale jebać - twórcy springa nazwali to tak i już). Ale od którejś wersji(chyba 4.1, ale idk) jeżeli w kontekscie springowym zdefiniujesz beana 'exception translator' (jakoś tak, nie pamiętam) + oznaczysz swoje dao jako @Repository to wtedy spring zacznie przepisywać wyjątki specyficzne dla konkretnej implementacji (ty używasz pewnie hibernate jako implementacji JPA) na swoje własne. Nie jest to na razie jakaś duża zaleta dla Ciebie, ale warto pamiętać że takie coś istnieje.

    Co do kodu - jasne, możesz wrzucić tutaj, możesz na PW.

    Jak coś nie jest jasne to pisz, bozia nie obdarzyła mnie talentem pedagogicznym :D
    Ostatnio zmieniony przez Rollercoster : 06-01-2017, 20:34

  13. #4887
    Avatar Rollercoster
    Data rejestracji
    2011
    Wiek
    29
    Posty
    1,247
    Siła reputacji
    14

    Domyślny

    Pytanie do pracujących torgów:
    Macie u siebie w firmie blue/green deployment aplikacji które działają na VMkach (nie w kontenerach)? Jeżeli tak, to jak spawnujecie VMki? Jak dużo? Usuwanie VMki po deployu? Co z nimi robicie? Co robicie ze starymi VMkami? Oracie je?

  14. #4888
    Avatar Adrino
    Data rejestracji
    2006
    Położenie
    Wrocław
    Wiek
    29
    Posty
    975
    Siła reputacji
    18

    Domyślny

    Cytuj Rollercoster napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Pewnie zaraz ktoś napisze że możesz użyć Spring Boota i Spring Data JPA. Tym tandemem ograsz każdy twój use case w kilku linijkach kodu, ale nie rób tego. Dopóki nie ogarniesz filozofii springa, konfiguracji itd. to lepiej żebyś jak to się robiło kiedyś (i w sumie nadal robi w starszych appkach). Kiedyś tutaj wspomniałem że pierwszy raz springa stawiałem ze dwa tygodnie, ale nie żałuję. Piękne czasy :)

    Co do twojej appki:
    Na samym początku musisz się zdecydować czy chcesz mieć konfiguracje springa i beanów w XMLu(tak jak teraz) czy chcesz to mieć w kodzie javowym, wygląda to mniej więcej tak jak w tym linku który wrzuciłem wyżej.

    Widzę, że ty używasz XMLa i adnotacji co się zdarza i jest dozwolone, nawet w moim projekcie tak jest, ale porzuciłbym na razie XMLa - ale jeżeli chcesz nadal to możesz zrobić identycznie jak tutaj: http://www.baeldung.com/the-persiste...-jpa#xmlconfig
    To jest ten sam link co wyżej, masz tam pokazane jak stworzyć potrzebne beany (datasource, entity manager factory, transaction manager) w XMLu. Plink persistence context xml już nie będzie ci potrzebny.

    Po takim zabiegu + dodaniu adnotacji @Transactional cały boilerplate metody addCustomerToDatabase() może być zastąpiony jedną♥linijką:
    entityManager.persist(newCustomer);

    Generalnie transakcje w springu to nie jest łatwa kwestia, ale jeżeli potrzebujesz czegoś tak prostego to na początku @Transactional na metodzie w DAO jest jak najbardziej ok.

    Oprócz tego możesz DAO oznaczyć jako @Repository a nie @Component. Sama zmiana na razie nic nie powoduje oprócz tego że bezpośrednio, przez adnotacje, mówić za co odpowiada twoja klasa (repository != dao, ale jebać - twórcy springa nazwali to tak i już). Ale od którejś wersji(chyba 4.1, ale idk) jeżeli w kontekscie springowym zdefiniujesz beana 'exception translator' (jakoś tak, nie pamiętam) + oznaczysz swoje dao jako @Repository to wtedy spring zacznie przepisywać wyjątki specyficzne dla konkretnej implementacji (ty używasz pewnie hibernate jako implementacji JPA) na swoje własne. Nie jest to na razie jakaś duża zaleta dla Ciebie, ale warto pamiętać że takie coś istnieje.

    Co do kodu - jasne, możesz wrzucić tutaj, możesz na PW.

    Jak coś nie jest jasne to pisz, bozia nie obdarzyła mnie talentem pedagogicznym :D
    Dzięki raz jeszcze za odpowiedź.
    Mam połączonego xml'a z adnotacjami, głównie przez to, że różnych funkcjonalności uczyłem się z różnych źródeł i tak mi się to zlepiło w jakąś całość :D

    Właściwie to chętnie pozbyłbym się xml'a bo średnio mi idzie praca na tych surowych beanach. Wydaje mi się, że to konfigurowanie aplikacji na dość niskim poziomie (w porównaniu do obecnych usprawnień). Z tego co rozumiem, to wyrzucając xml'a musiałbym odpowiadającą mu konfigurację przenieść do klasy javy, która opatrzona będzie adnotacją @Configuration?
    Ogólnie jest możliwe wrzucenie takiej konfiguracji do pliku gdzie będę miał:
    - automatycznego component scana
    - annotation driven mvc
    - skonfigurowanego viewResolvera (to żeby mi wyszukiwał widoku w WEB-INF/jsp z prefixem .jsp?

    Spróbuję jutro zrobić sobie nowego brancha i przenieść tę konfigurację do pliku javy.
    Tymczasem podsyłam Ci na pw (mam w linku dane osobowe i nie chce ich tak puszczać w świat).

    Obecnie apka ma takie funkcje:



    A finalnie do końca tej wersji podstawowej chcę jeszcze dodać opcje wypożyczenia książek (osobna tabela, która zawiera datę wypożyczenia i oddania (obie zbierane automatycznie przy wykonywaniu danej operacji) i relacje z tabelą book i customer - wiadomo, do zwracania wyników :P). Potem może jakieś drobne poprawki wizualne, może paging przy większej ilości rekordów i jakaś refaktoryzacja.

    #edit
    Tak sobie spojrzałem na

    I aż smutek, że po tylu dniach praktycznego kodu wyszło mi tylko tyle. Chciałbym tak klepać te aplikacje, jak Ci ludzie z tutoriali :P
    I ileż mnie nerwów kosztowała każda czynność po kolei, coś pięknego ;d
    Ostatnio zmieniony przez Adrino : 06-01-2017, 23:12

  15. #4889
    Avatar Cybuch
    Data rejestracji
    2004
    Położenie
    Poznań
    Wiek
    32
    Posty
    2,161
    Siła reputacji
    21

    Domyślny

    Cytuj Adrino napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Ogólnie jest możliwe wrzucenie takiej konfiguracji do pliku gdzie będę miał:
    - automatycznego component scana
    - annotation driven mvc
    - skonfigurowanego viewResolvera (to żeby mi wyszukiwał widoku w WEB-INF/jsp z prefixem .jsp?
    Tak.
    - @ComponentScan("twoj.pakiet")
    - @EnableWebMvc
    - http://stackoverflow.com/questions/1...ava-annotation

    Resztę sobie sam poszukaj, ale generalnie wszystko to co możesz skonfigurować w xmlu możesz też skonfigurować w beanach oznaczonych jako @Configuration.

    Co do rozwijania aplikacji - może jeszcze security wrzuć?

  16. #4890
    Avatar Adrino
    Data rejestracji
    2006
    Położenie
    Wrocław
    Wiek
    29
    Posty
    975
    Siła reputacji
    18

    Domyślny

    Cytuj Cybuch napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Tak.
    - @ComponentScan("twoj.pakiet")
    - @EnableWebMvc
    - http://stackoverflow.com/questions/1...ava-annotation

    Resztę sobie sam poszukaj, ale generalnie wszystko to co możesz skonfigurować w xmlu możesz też skonfigurować w beanach oznaczonych jako @Configuration.

    Co do rozwijania aplikacji - może jeszcze security wrzuć?
    Super, dzieki :)

    Wlasnie myslalem zeby kolejnym krokiem byl Security. Obecna wersje przerzucic jako dostepna tylko dla admina po zalogowaniu, a domyslnie dac mozliwosc tylko podgladu wypozyczonych ksiazek przez danego uzytkownika.

    #edit
    Udało się przenieść konfiguracje z xml do javy, są postępy!
    Ostatnio zmieniony przez Adrino : 07-01-2017, 13:25

Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 2 użytkowników przegląda ten temat. (0 użytkowników i 2 gości)

Podobne tematy

  1. Star Wars: The Old Republic - temat ogólny
    Przez Mefistos w dziale Inne gry
    Odpowiedzi: 106
    Ostatni post: 21-11-2012, 14:28
  2. League of Legends //dla potomnosci: League of Legends - temat ogolny.
    Przez ZinC w dziale Inne gry
    Odpowiedzi: 30145
    Ostatni post: 24-03-2012, 02:33
  3. Cities XL 2012 - temat ogólny
    Przez Bezdomny w dziale Inne gry
    Odpowiedzi: 0
    Ostatni post: 20-10-2011, 18:11
  4. Dragon Ball Legend temat ogólny
    Przez Mugenoo w dziale Tematy serwerów
    Odpowiedzi: 20
    Ostatni post: 02-03-2011, 16:47

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •