You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Benni Bärmann a50c8efd60 sort of label choices on extern.html view alphabetically, change of text when form was sent to communitys und engagement instead of Ideenfoerderung 2 years ago
foerderbarometer added mail_state to all objects, added filters regarding sendmail.py 2 years ago
input sort of label choices on extern.html view alphabetically, change of text when form was sent to communitys und engagement instead of Ideenfoerderung 2 years ago
.gitignore added mail_state to all objects, added filters regarding sendmail.py 2 years ago
LICENSE Initial commit 4 years ago
README.md docu changes only 3 years ago
TODO fixture added to fix deployment problem with key constraints 3 years ago
manage.py new django project 4 years ago
requirements.txt added mail_state to all objects, added filters regarding sendmail.py 2 years ago

README.md

foerderbarometer

purpose: gather data from intern(WMDE) and extern(volunteers) forms to create a database ('förderdatenbank') and send emails with links for a questionary.

installation and development setup

ln -sr foerderbarometer/settings_development.py foerderbarometer/settings.py

build the database with

python3 manage.py migrate

create superuser account with

python3 manage.py createsuperuser

run the development server with

python3 manage.py runserver

access via

http://localhost:8000/
http://localhost:8000/intern/    (login required)
http://localhost:8000/admin/     (login reqiured)

additional admin functionality

The admin page is the standard admin page delivered by django but with two additional functionalities:

  • There is a new action "export to csv" with which you can export all Selected entries to a csv file

  • There is a new button in the bottom of every Project to "save as new"

versions used in development

python 3.8.2
django 3.1.x (does not work with django 3.2 in the moment!)
django-formtools 2.2
whitenoise 5.2.0
gunicorn 20.0.4

testing

run some tests with

python3 manage.py test

production setup

ln -sr foerderbarometer/settings_production.py foerderbarometer/settings.py

edit /secrets.json to contain something similar to

{
  "DATABASE_PASSWORD": "THIS IS TOP SECRET!",
  "SECRET_KEY": "THIS IS ANOTHER SECRET!"
}

edit foerderbarometer/settings_production.py according to your database setup (tested with MariaDB 10.0.36)

run the following commands:

python3 manage.py migrate
python3 manage.py collectstatic

server starts with

nohup gunicorn --forwarded-allow-ips="*" -b '0:8000' foerderbarometer.wsgi 2&> logfile &

Should be executed at least daily e.g. in crontab

python3 manage.py sendmails