This shows you the differences between two versions of the page.
ii:lab:laborator5 [2021/01/09 02:25] eduard.staniloiu [Templates] |
ii:lab:laborator5 [2021/01/20 08:51] (current) florin.stancu [Exerciții] |
||
---|---|---|---|
Line 32: | Line 32: | ||
</code> | </code> | ||
+ | |||
+ | <note important> | ||
+ | Dacă nu vă merge (diferite setup-uri), încercați una dintre comenzile echivalente: | ||
+ | <code bash> | ||
+ | pip3 install ... # pip pentru python3, dacă este aliasat | ||
+ | python3 -mpip install ... # pentru python3 | ||
+ | |||
+ | python -mpip install ... # pentru python2 | ||
+ | </code> | ||
+ | </note> | ||
===== Hello World ===== | ===== Hello World ===== | ||
Line 359: | Line 369: | ||
<div><a href="/index"><i class="bi bi-house"></i></a></div> | <div><a href="/index"><i class="bi bi-house"></i></a></div> | ||
</code> | </code> | ||
+ | |||
+ | |||
+ | ===== Exerciții ===== | ||
+ | |||
+ | O să scrieți o aplicație web care are rolul unui CV. | ||
+ | CV-ul trebuie să conțină secțiunile: Work Experience, Education, Projects și Languages and Technologies | ||
+ | |||
+ | 1. **[10]** Aplicația trebuie să aibă două pagini: Home (CV-ul) și Contact | ||
+ | |||
+ | 2. **[30]** Informațiile secțiunilor din CV sunt populate de către server, și nu sunt scrise în template-ul Jinja. | ||
+ | Informațiile secțiunilor sunt stocate sub formă de dicționar. | ||
+ | De exemplu: | ||
+ | <code python> | ||
+ | work_exp = [ { position: "swe", company: "xyz", period: "Jun 2020 - Oct 2020" } ] | ||
+ | </code> | ||
+ | |||
+ | 3. **[10]** Folosiți icon-uri pentru Home și Contact | ||
+ | |||
+ | 4. **[20]** Folosiți componenta Bootstrap [[https://getbootstrap.com/docs/5.0/components/navbar/|Navbar]] pentru butoanele Home și Contact | ||
+ | |||
+ | 5. **[30]** Pagina de contact trebuie să conțină și un formular prin intermediul căruia un utilizator să vă poată contacta. | ||
+ | Formularul trebuie să conțină câmpurile: Nume, Adresă de e-mail și Mesaj. | ||
+ | Atunci când utilizatorul apasă butonul **Trimite** al formularului, serverul flask vă va //[simula că]// trimite un e-mail cu informațiile formularului prin scrierea unui fișier pe server (e.g., ''contact-mail.txt''). |