diff --git a/.gitignore b/.gitignore index e1d7da6..3003059 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ db.sqlite3 models_bk.py nohup.out nohup.* +venv/ +local_settings.py \ No newline at end of file diff --git a/README.md b/README.md index 11a2b5c..4791842 100644 --- a/README.md +++ b/README.md @@ -34,3 +34,65 @@ Please try our basic **tutorial** here - [Movement Database Tutorial](webworm_do Information on how each interface component feature can be used is found here - [Movement Database Features Documentation](webworm_docs/Features.md) + +## Contributing + +### Preparation + +Create virtual environment + +```shell +python -m venv venv +``` + +Activate virtual environment. + +On Windows +```shell +venv/Scripts/activate +``` + +On Linux +```shell +source venv/Scripts/activate +``` + +### Local setup + +Create `movement_site/local_settings.py` with approximately following content + +```py +import os +LOCAL_BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +# SQLite database engine for much simpler setup +# For production, consider using PostgreSQL or another robust database engine +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': LOCAL_BASE_DIR / 'db.sqlite3', + } +} + +ALLOWED_HOSTS = ['127.0.0.1'] + +EMAIL_USE_TLS = True +EMAIL_HOST = 'smtp.gmail.com' +EMAIL_HOST_USER = 'test@gmail.com' +EMAIL_HOST_PASSWORD = 'test' +EMAIL_PORT = 587 +``` + +You may need run following commmand to apply migrations for a first time, and in case you actively develop things. +```shell +python manage.py migrate +``` + +### Develoment workflow + +Run development server +```shell +python manage.py runserver +``` + +Open http://127.0.0.1:8000/ in the browser \ No newline at end of file diff --git a/movement_site/settings.py b/movement_site/settings.py index 43c0f7e..72a5c0d 100644 --- a/movement_site/settings.py +++ b/movement_site/settings.py @@ -86,6 +86,7 @@ } } +DEFAULT_AUTO_FIELD = 'django.db.models.AutoField' # Password validation # https://docs.djangoproject.com/en/1.10/ref/settings/#auth-password-validators diff --git a/movement_site/urls.py b/movement_site/urls.py index 8a6644d..ead1649 100644 --- a/movement_site/urls.py +++ b/movement_site/urls.py @@ -13,11 +13,11 @@ 1. Import the include() function: from django.conf.urls import url, include 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) """ -from django.conf.urls import include, url +from django.urls import include, re_path from django.contrib import admin urlpatterns = [ - url(r'^', include('webworm.urls')), - url(r'^admin/', admin.site.urls), + re_path(r'^', include('webworm.urls')), + re_path(r'^admin/', admin.site.urls), ] diff --git a/webworm/urls.py b/webworm/urls.py index f886415..67f2859 100644 --- a/webworm/urls.py +++ b/webworm/urls.py @@ -1,12 +1,12 @@ -from django.conf.urls import url +from django.urls import re_path from . import views urlpatterns = [ - url(r'^$', views.index, name='index'), - url(r'^wconviewer', views.wconviewer, name='wconviewer'), - url(r'^upload', views.upload, name='upload'), - url(r'^contributors', views.contrib, name='contributors'), - url(r'^release', views.release, name='release'), - url(r'^feedback', views.feedback, name='feedback'), + re_path(r'^$', views.index, name='index'), + re_path(r'^wconviewer', views.wconviewer, name='wconviewer'), + re_path(r'^upload', views.upload, name='upload'), + re_path(r'^contributors', views.contrib, name='contributors'), + re_path(r'^release', views.release, name='release'), + re_path(r'^feedback', views.feedback, name='feedback'), ]