Jonas Havelka
28a39f0b8e
|
3 years ago | |
---|---|---|
_git_hooks | 8 years ago | |
aesop | 3 years ago | |
api | 3 years ago | |
data | 3 years ago | |
deploy_v2 | 3 years ago | |
docs/zapisy | 3 years ago | |
galerie | 3 years ago | |
header_fotky | 4 years ago | |
ilustrace_odmeny | 3 years ago | |
korektury | 3 years ago | |
mamweb | 3 years ago | |
odevzdavatko | 3 years ago | |
personalni | 3 years ago | |
prednasky | 3 years ago | |
seminar | 3 years ago | |
setup | 3 years ago | |
soustredeni | 3 years ago | |
treenode | 3 years ago | |
various | 3 years ago | |
vue_frontend | 4 years ago | |
vysledkovky | 3 years ago | |
.gitignore | 4 years ago | |
Makefile | 3 years ago | |
README.md | 5 years ago | |
checklinks.sh | 3 years ago | |
constraints.txt | 3 years ago | |
convert_spaces_to_tabs.sh | 6 years ago | |
diff_db_backup.sh | 9 years ago | |
fix_json.py | 4 years ago | |
manage.py | 6 years ago | |
requirements.txt | 3 years ago |
README.md
Basic commands for web development
After you clone this repository, run make
. It will download, locally install
and setup virtualenv and pip, and then locally install all required packages
from requirements.txt
.
When working with the code, always use the binaries in ./bin/
, such as
bin/pip
, bin/python
, ... never the global python, pip, ...
Use make
and ./manage.py
for most things.
Use git :-)
Quickstart
Run the following commands: make install_venv . env/bin/activate make install_web
After finishing development, run "deactivate".
Make commands
-
make install
(ormake
) - locally install and setup virtualpy, install required packages. Ran again installs missing packages. Run after changingrequirements.txt
. -
make clean
- remove local python packages. -
make veryclean
- remove local packages and virtualpy enviroment and binaries. -
make run
- runs "./manage.py runserver_plus" -
make push_test
- pushes the last commited version to test location. Only git-commited changes are pushed! Rest is re-generated from scratch. At test server, the media data and database are kept the same. Everything else not in .gitignore is deleted/overwritten on the test server. -
make schema
- generates graph of seminar and all schemas as PDF. Supercool! -
make sync_prod_flatpages
- downloads and applies static/flat pages from mamweb-prod
./manage.py commands
-
./manage.py migrate
- update the database schema, initialise the database. You need to run this in the beginning. -
./manage.py runserver_plus
- run a debugging server for the web. Slightly enhanced compared to./manage.py runserver
. Open 127.0.0.1:8000. -
./manage.py testdata
- create pseudo-random seminar data and admin/admin user. -
./manage.py test
- run the tests. -
./manage.py shell
- run commands, list elemements of database, check syntax by importing files, etc.
Configurations
mamweb/settings_common.py
contains most configuration options.mamweb/settings.py
is used only for local development.mamweb/settings_test.py
is used for testing on atrey.mamweb/settings_prod.py
is used in production deployment.
These are automatically switched by make
.