-
-
Save kidpixo/fdf565d455652ddb33b29e232808ebb6 to your computer and use it in GitHub Desktop.
Simple creation of a single-app django project
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# Simple creation of a single-app django project, as described in: https://zindilis.com/posts/django-anatomy-for-single-app/ | |
# | |
# ./django_init foo | |
# | |
# This will result is the following flat structure: | |
# | |
# . | |
# └── foo | |
# ├── manage.py | |
# ├── settings.py | |
# ├── urls.py | |
# ├── foo | |
# │ ├── __init__.py | |
# │ ├── admin.py | |
# │ ├── apps.py | |
# │ ├── migrations | |
# │ │ └── __init__.py | |
# │ ├── models.py | |
# │ ├── tests.py | |
# │ └── views.py | |
# └── wsgi.py | |
# | |
# Note: this script assumes a GNU-compatible sed is installed. On macOS you can get this easily with Homebrew. | |
prj=$1 | |
django-admin startproject $prj | |
cd $prj | |
mv $prj/* . | |
rm __init__.py | |
rm -rf $prj | |
sed -i 's/'"${prj}"'\.settings/settings/g' manage.py wsgi.py | |
sed -i 's/'"${prj}"'\.urls/urls/g' settings.py | |
sed -i 's/'"${prj}"'\.wsgi\.application/wsgi.application/g' settings.py | |
sed -i '/BASE_DIR = /s/Path(__file__).resolve().parent.parent/Path(__file__).resolve().parent/' settings.py | |
sed -i 's/'"${prj}"'\.wsgi\.application/wsgi.application/g' settings.py | |
./manage.py startapp ${prj} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment