Install Django2016/01/26 |
|
Install Django which is Python Web Application Framework.
|
|
| [1] | Install some packages. |
|
root@www:~# apt-get -y install python-virtualenv
|
| [2] | Install Django under a Virtualenv environment. It's possible to do for any common user. |
|
ubuntu@www:~$ virtualenv venv ubuntu@www:~$ cd ~/venv ubuntu@www:~/venv$ source bin/activate (venv)ubuntu@www:~/venv$ pip install -U pip (venv)ubuntu@www:~/venv$ pip install django
Collecting django
/home/ubuntu/venv/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:315:
SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name Indication) extension to
TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate,
which can cause validation failures. For more information,
see https://urllib3.readthedocs.org/en/latest/security.html#snimissingwarning.
SNIMissingWarning
/home/ubuntu/venv/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:120:
InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring
SSL appropriately and may cause certain SSL connections to fail.
For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
Downloading Django-1.9.1-py2.py3-none-any.whl (6.6MB)
100% |###############################| 6.6MB 66kB/s
Installing collected packages: django
Successfully installed django-1.9.1
(venv)ubuntu@www:~/venv$
django-admin --version 1.9.1 # exit from virtualenv (venv)ubuntu@www:~/venv$ deactivate ubuntu@www:~/venv$ |
| [3] | Create a test project. |
|
# create "testproject" (venv)ubuntu@www:~/venv$ django-admin startproject testproject (venv)ubuntu@www:~/venv$ cd testproject # configure database (default is SQLite) (venv)ubuntu@www:~/venv/testproject$ python manage.py migrate
# create admin user (venv)ubuntu@www:~/venv/testproject$ python manage.py createsuperuser Username (leave blank to use 'ubuntu'): ubuntu Email address: ubuntu@www.srv.world Password: Password (again): Superuser created successfully. # start server venv)ubuntu@www:~/venv/testproject$ python manage.py runserver 0.0.0.0:8000 Performing system checks... System check identified no issues (0 silenced). January 27, 2016 - 07:37:09 Django version 1.9.1, using settings 'testproject.settings' Starting development server at http://0.0.0.0:8000/ Quit the server with CONTROL-C. |
| [4] | Access to the "http://(server's hostname or IP address):8000/" from a client computer. It's OK if following site is displayed normally. |
|
| [5] | It's possible to user admin site on "http://(server's hostname or IP address):8000/admin". |
|
|
| [6] | Create a test application. |
|
ubuntu@www:~$
(venv)ubuntu@www:~/venv/testproject$ cd ~/venv ubuntu@www:~/venv$ source bin/activate (venv)ubuntu@www:~/venv$ cd testproject python manage.py startapp testapp
(venv)ubuntu@www:~/venv/testproject$
vi testapp/views.py # add to the end
from django.http import HttpResponse
def main(request):
html = '<html>\n' \
'<body>\n' \
'<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">\n' \
'Django Test Page\n' \
'</div>\n' \
'</body>\n' \
'</html>\n'
return HttpResponse(html)
(venv)ubuntu@www:~/venv/testproject$
mv testproject/urls.py testproject/urls.py.org (venv)ubuntu@www:~/venv/testproject$ vi testproject/urls.py # create new
from django.conf.urls import patterns, url
urlpatterns = patterns('',
url(r'^testapp/$', 'testapp.views.main'),
)
(venv)ubuntu@www:~/venv/testproject$
vi testproject/settings.py # add testapp
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'testapp',
python manage.py runserver 0.0.0.0:8000 |
| [7] | Access to the "http://(server's hostname or IP address):8000/testapp/" from a client computer. It's OK if testapp is displayed normally. |
|
|
|