This shows you the differences between two versions of the page.
|
isi:laboratoare:06 [2025/11/09 23:27] alexandru.predescu [Arhitectura client-server] |
isi:laboratoare:06 [2025/11/15 10:58] (current) alexandru.predescu |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ===== Laboratorul 06. Arhitectura client-server ===== | + | ===== Laboratorul 06. Arhitectura client-server. Python Flask ===== |
| ==== Obiective laborator ==== | ==== Obiective laborator ==== | ||
| Line 120: | Line 120: | ||
| * **500 Internal Server Error**: Eroare pe server | * **500 Internal Server Error**: Eroare pe server | ||
| - | === **Plan laborator. Setup** === | + | ==== Plan Laborator ==== |
| + | |||
| + | === Setup === | ||
| 1. Pentru a începe, asigurați-vă că aveți instalat [[https://www.python.org/downloads/|Python]]. | 1. Pentru a începe, asigurați-vă că aveți instalat [[https://www.python.org/downloads/|Python]]. | ||
| Line 226: | Line 228: | ||
| </note> | </note> | ||
| - | === **Plan laborator. Task** === | + | === Task === |
| - | Completati **TO DO**-urile din scheletul de cod, acestea sunt **self explanatory**. Scopul acestora este sa intelegeti cum sa interactionati cu o baza de date prin intermediul unui **server**. Prin aceste metode numite **endpoint-uri** puteti realiza comunicarea dintre client si server. | + | Completati **TO DO**-urile din scheletul de cod, acestea sunt **self explanatory**. Pentru paginare, puneti doi parametri: page (numarul paginii) si limit (numar de inregistrari per pagina). Scopul acestora este sa intelegeti cum sa interactionati cu o baza de date prin intermediul unui **server**. Prin aceste metode numite **endpoint-uri** puteti realiza comunicarea dintre client si server. |
| <note tip> | <note tip> | ||
| **Urmăriți comentariile din schelet** și tutorialul Flask-SQLAlchemy [[https://flask-sqlalchemy.readthedocs.io/en/stable/quickstart/|Quick Start]] pentru a implementa operațiile cu baza de date necesare pentru implementarea funcționalităților de lucru cu datele. Alternativ, folosiți direct biblioteca [[https://docs.python.org/3/library/sqlite3.html|sqlite3]] (vezi exemple în scheletul de cod) pentru a interoga baza de date folosind sintaxă SQL. | **Urmăriți comentariile din schelet** și tutorialul Flask-SQLAlchemy [[https://flask-sqlalchemy.readthedocs.io/en/stable/quickstart/|Quick Start]] pentru a implementa operațiile cu baza de date necesare pentru implementarea funcționalităților de lucru cu datele. Alternativ, folosiți direct biblioteca [[https://docs.python.org/3/library/sqlite3.html|sqlite3]] (vezi exemple în scheletul de cod) pentru a interoga baza de date folosind sintaxă SQL. | ||
| </note> | </note> | ||
| - | === **Plan laborator. Testare** === | + | === Testare === |
| Testati fiecare endpoint in parte, verificati ca functioneaza corect. Mai jos este descris un test case pe care sa-l abordati, iar de la acesta puteti sa realiza propriile voastre test case-uri. | Testati fiecare endpoint in parte, verificati ca functioneaza corect. Mai jos este descris un test case pe care sa-l abordati, iar de la acesta puteti sa realiza propriile voastre test case-uri. | ||
| Line 298: | Line 300: | ||
| * Verifică cu DB Browser dacă fișierul `tasks.db` există în folder-ul `instance` | * Verifică cu DB Browser dacă fișierul `tasks.db` există în folder-ul `instance` | ||
| - | ---------- | ||
| - | === [Q&A] === | + | ==== [Q&A] ==== |
| == De ce trecem de la Firebase la Flask? == | == De ce trecem de la Firebase la Flask? == | ||
| Line 353: | Line 354: | ||
| - | === Resurse Utile === | + | ==== Resurse Utile ==== |
| == Documentație == | == Documentație == | ||