AdonisJS | Framework podobny do Laravela dla NodeJs
AdonisJS to w pełni funkcjonalny framework webowy dla Node.js, na który duży wpływ ma Laravel, popularny framework webowy PHP. W tym podsumowaniu zbadamy podobieństwa i różnice między AdonisJS i Laravel oraz przedstawimy przykłady funkcji AdonisJS, które odpowiadają funkcjom Laravel.
podobieństwa:
- Architektura MVC: Zarówno AdonisJS, jak i Laravel używają wzorca architektury Model-View-Controller (MVC) do strukturyzowania aplikacji internetowych.
- Interfejs wiersza poleceń (CLI): Zarówno AdonisJS, jak i Laravel zapewniają interfejs wiersza poleceń (CLI) do generowania kodu podstawowego, uruchamiania migracji baz danych i innych zadań.
- Routing: Obie platformy używają routingu do definiowania sposobu obsługi żądań HTTP.
- Oprogramowanie pośrednie: AdonisJS i Laravel używają oprogramowania pośredniego do obsługi zadań, takich jak uwierzytelnianie, sprawdzanie poprawności żądań i rejestrowanie.
- ORM: Zarówno AdonisJS, jak i Laravel zapewniają ORM (Object-Relational Mapping) do pracy z bazami danych.
- Szablony przypominające ostrza: AdonisJS jest wyposażony we własny silnik szablonów o nazwie Edge, który zapewnia składnię podobną do Blade'a Laravela.
- Społeczność: Zarówno AdonisJS, jak i Laravel mają aktywne społeczności programistów, którzy przyczyniają się do rozwoju frameworka, tworzą pakiety i zapewniają wsparcie.
- Język: AdonisJS jest zbudowany na Node.js, podczas gdy Laravel jest zbudowany na PHP.
- Async: AdonisJS został zaprojektowany jako asynchroniczny i używa obietnic, podczas gdy Laravel jest synchroniczny i używa wyjątków.
- Struktura plików: AdonisJS ma inną strukturę plików niż Laravel, z katalogami takimi jak
app/Controllersiapp/Modelszamiastapp/Http/Controllersiapp/Modelsw Laravel. - Konfiguracja: AdonisJS używa
.envplików do konfiguracji, podczas gdy Laravel używa.envzarówno plików, jak iconfigplików. - Porządkowanie oprogramowania pośredniego: AdonisJS stosuje oprogramowanie pośrednie w kolejności, w jakiej są zdefiniowane w pliku trasy, podczas gdy Laravel stosuje oprogramowanie pośrednie w kolejności, w jakiej są zdefiniowane w pliku jądra.
Oto przykład tego, jak AdonisJS i Laravel różnią się podejściem do routingu:
W AdonisJS możesz definiować trasy za pomocą płynnego API:
W Laravelu:
Oto przykład tworzenia modelu i migracji w AdonisJS:
To polecenie wygeneruje nowy plik modelu w app/Models o nazwie Post.js i plik migracji w database/migrations o nazwie coś w rodzaju 1612989050522_create_posts_table.js.
Teraz otwórz plik migracji i zdefiniuj schemat tabeli posts:
Ta migracja spowoduje utworzenie poststabeli z sygnaturami czasowymi id, , i i .titlebodycreated_atupdated_at
Teraz otwórz plik modelu i zdefiniuj schemat dla Postmodelu:
Otóż to! Możesz teraz używać Postmodelu do interakcji z poststabelą w bazie danych. Na przykład, aby utworzyć nowy post, możesz wykonać następujące czynności:
Oto przykład podstawowego kontrolera AdonisJS dla Postmodelu, który stworzyliśmy wcześniej:
Ten kontroler definiuje kilka metod obsługi operacji CRUD na Postmodelu.
Metoda index()pobiera wszystkie posty z bazy danych i zwraca je jako tablicę.
Metoda store()tworzy nowy post poprzez wyodrębnienie titlei bodyz obiektu żądania, utworzenie nowej Postinstancji, ustawienie jej pól i zapisanie jej w bazie danych. Następnie zwraca nowo utworzony post.
Metoda show()pobiera pojedynczy post według jego idparametru i zwraca go.
Metoda update()aktualizuje post według jego idparametru, wyodrębniając titlei bodyz obiektu żądania, aktualizując pola postu i zapisując go w bazie danych. Następnie zwraca zaktualizowany post.
Metoda destroy()usuwa post według jego idparametru i zwraca go.
Metody te wykorzystują wbudowane oprogramowanie pośredniczące AdonisJS oraz obiekty żądania/odpowiedzi do obsługi przychodzących żądań i wychodzących odpowiedzi. Należy zauważyć, że jest to tylko podstawowy przykład, a w AdonisJS dostępnych jest o wiele więcej funkcji i technik budowania niezawodnych kontrolerów.
AdonisJS, ze składnią i konwencjami podobnymi do Laravela, zapewnia programistom znane i intuicyjne środowisko podczas tworzenia pełnych aplikacji internetowych w JavaScript. Architektura MVC platformy, potężny ORM, oprogramowanie pośredniczące, routing, uwierzytelnianie i możliwości renderowania widoków sprawiają, że jest to solidny i wydajny wybór dla programistów, którzy chcą tworzyć nowoczesne aplikacje internetowe w Node.js.

![Czym w ogóle jest lista połączona? [Część 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































