Giter VIP home page Giter VIP logo

tsoha's People

Contributors

toxpuro avatar

Watchers

 avatar

tsoha's Issues

Code review 1: Tietokantasovellus-harjoitustyö

Kunnianhimoinen ja laaja aihe! 💯

Kommentit sovelluksesta Herokussa

  • Toimii hyvin: ryhmän lisääminen, threadin lisääminen ja haku
  • Ei toimi vielä: threadin äänestäminen, kommentin lisääminen threadiin tai ryhmään liittyminen (yhdessä threadissa oli kommentteja, mutta en itse onnistunut niitä lisäämään)
  • Syötteiden pituudet tarkistetaan 👍🏻
  • Hakukentän ohje-teksti englanniksi vaikka sovellus muuten suomeksi
  • En päässyt urleja manipuloimalla näkemään mitään ei-sallittua 👍🏻
  • Huomio: jos lisää saman nimisen ryhmän ei tule virheilmoitusta, mutta ryhmä ei myöskään näy tuplana - ehkä näin tarkoituskin?
  • Jos aikaa jää, virhesivut voisi lisätä esim. osoitteille joita ei löydy

Huomiona seuraaviin kommentteihin: tämä on ensimmäinen kurssi, jolla käytän Pythonia, joten sen osalta en osaa kovin syvällisiä kommentoida..

Sovelluksen koodi ja rakenne

  • Venv, pycache yms. hakemistot kannattaa varmaan deletoida githubista, olivat ehtineet uida mukaan alussa. Nyt gitignore kunnossa.
  • Sovelluksen rakenne vaikutti selkeältä - jaettu järkevästi nimettyihin hakemistoihin 👍🏻
  • Lomakkeissa huomioitu syötteiden maksimipituudet - hyvä! 👍🏻
  • Csrf huomioitu lomakkeissa - hyvä! 👍🏻 (Lukuunottamatta new.html, mutta se ei tainnut olla käytössä)
  • Pitkät SQL-kyselyt kannattaisi ehkä rivittää luettavuuden helpottamiseksi (oliko projektissa pylint käytössä?)

Muuta

  • flash() oli minulle uusi tuttavuus- kiitos opin uutta!

Vertaisarvio

Testattu 12.10.2021 klo 0:30

Sovellusta on helppoa ja intuitiivista käyttää, ja sillä on miellyttävä ulkonäkö.

Muutama ongelma kuitenkin löytyy:

  • Jos et ole liittynyt mihinkään ryhmään ja yrität luoda ketjun, serveri palauttaa Bad Requestin
  • Rekisteröintisivulla painaessa "Kirjaudu"-painiketta selain ohjautuu "/login" sivulle, joka ei salli GET-pyyntöjä.
  • Yrittäessä poistaa ja muokata ketjua sain virheen. Ketju oli minun tekemä ja sijaitsi ryhmässä, josta olin poistunut.
  • Kaikilla sivuilla olisi hyvä olla linkki mennä yksi taaksepäin, esim. ketjusta takaisin ryhmään. Nyt käyttämättä selaimen toimintoja pääsee vain etusivulle.
  • Olisi intuitiivista, jos dropdown-valikot sulkeutuisivat klikatessa muualle tai kun avataan toinen valikko.
  • Ketjujen kommenttien pisteiden olisi varmaan parempi olla upvote/downvote -painikkeiden vasemmalla puolella, jottei niitä sekottaisi kommentin osaksi.

Kurkkailin hieman koodiasi ja voi hyvinkin olla että moni näistä bugeista joutuu Pythonin dictionaryistä (joita esim. request.form ja session ovat). Jos koitat hakasuluilla hakea dictionarystä jotain, esim. session["username"] ja avainta username ei ole olemassa, se heittää KeyErrorin. Kun avain ei mahdollisesti ole olemassa, kannattaa käyttää tässä tapauksessa session.get("username"), joka antaa Nonen jos avainta ei ole olemassa. Vaihtoehtoisesti getin toiseksi parametriksi voit myös antaa arvon, jonka haluat Nonen sijaan.

Nämä kaikki ovat onneksi kuitenkin aika pieniä ongelmia, ja projekti on muutoin hyvällä mallilla. Hieno homma ja onnea jatkoon!

Tunnuksen luominen sovellukseen ei onnistu

Hei!

Yritin luoda käyttäjätunnusta sovellukseen, jotta pääsisin testaamaan, mutta saan aina virheilmoituksen, että "Käyttäjänimi on jo otettu". Voisitko laittaa minulle testitunnukset joko telegramiin tai spostilla.

-- Pia

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.