Sovelluksen avulla voi löytää ravintoloita kartalta, etsiä niistä tietoa, arvostella niitä ja lukea muiden arvosteluita.
Sovelluksen ominaisuuksia ovat:
- Käyttäjä voi kirjautua sisään tai luoda uuden tunnuksen. Jokainen käyttäjä on joko peruskäyttäjä tai ylläpitäjä.
- Käyttäjä näkee ravintolat kartalla. Ravintolaa klikatessa näytetään siihen liittyvää informaatiota (kuvaus, aukioloajat, jne.)
- Käyttäjä voi antaa ravintolalle arvion (tähdet 1-5 ja vapaamuotoinen kommentti)
- Käyttäjä voi lukea muiden kirjoittamia arvioita
- Ylläpitäjä voi lisätä ja poistaa ravintoloita, sekä määritellä ravintolasta näytettävät tiedot
- Käyttäjä voi hakea ravintoloita avainsanojen perusteella, joita etsitään ravintoloiden nimistä ja kuvauksista.
- Käyttäjä näkee ravintolat listassa, jossa ravintolat voidaan järjestää ainakin arvostelujen perusteella.
- Ylläpitäjä pystyy poistamaan käyttäjän arvion ravintolalta
- Ylläpitäjä voi luoda ryhmiä, joihin ravintolat voidaan luokitella. Ravintola voi kuulua yhteen tai useampaan ryhmään.
To run, set up a PostgreSQL database with the University of Helsinki's installation script.
Once you have PostgreSQL up and running, open the Postgres front-end by running psql
and run the SQL queries in schema.sql.
You can also do that by creating the database with:
$ psql
user=# CREATE DATABASE <database-name>;
and then running the following command on the command line:
$ psql -d <database-name> < schema.sql
After PostgreSQL has been set up, create a virtual environment (optional) and install the required Python dependencies with:
# Optional
$ python3 -m venv venv
$ source venv/bin/activate # For Linux
# Required
$ pip3 install -r requirements.txt
Finally create an .env file to the project's root with the following content:
DATABASE_URL=postgresql+psycopg2:///<database-name>
Now you can run the application with the following command:
$ DB_SECRET=<secret> flask --app app/app.py run
Generate yourself a secret using e.g. the Python terminal:
$ python3
>>> import secrets
>>> secrets.token_hex(16)