01 djangoプロジェクト構築プロセス

3242 ワード

1運転環境構築


1.1手動構築


(1)pip(ubuntu:)のインストール
sudo apt-get install python-pip

(2)pipによるDjangoのインストール
pip install Django==1.11

//         
>>> import django
>>> django.VERSION
(1, 8, 18, 'final', 0)
>>> 
>>> django.get_version()
'1.8.18'

(3)新規djangoプロジェクト
django-admin.py startproject project_name
     windows  ,    ,    django-admin    django-admin.py   

(4)新しいapp
python manage.py startapp app_name
  django-admin.py startapp app_name

(5)データベーステーブルの作成またはデータベーステーブルまたはフィールドの変更
Django 1.7.1         
# 1.        
python manage.py makemigrations
# 2.     py        
python manage.py migrate

(6)開発サーバの使用
python manage.py runserver 
#            ,       :
python manage.py runserver 8001
#          ip (         ip     ip)
python manage.py runserver 0.0.0.0:8000
#                            
#       ip   ,   http://172.16.20.2:8000

(7)スーパー管理者の作成
python manage.py createsuperuser 
#                         ,        
 
#           :
python manage.py changepassword username

(8)Djangoプロジェクト環境端末
python manage.py shell

1.2スクリプト構築

(1)                      ,  :/opt/disk2/var/www/test
(2)   deploy.sh    ,    :sh deploy.sh /opt/disk2/var/www/test       (/opt/disk2/var/www/test     web_dir  )
(3)deploy.sh       :
-     
-       
-   nginx
-   uwsgi
-     
(4)        requirements.txt    ,  :
--index-url https://pypi.tuna.tsinghua.edu.cn/simple

certifi==2017.4.17
chardet==3.0.4
cssselect==1.0.1
cssutils==1.0.2
Django==1.11.3
django-filter==1.0.4
django-grappelli==2.10.1
djangorestframework==3.6.3
gevent==1.2.2
greenlet==0.4.12
hjson==2.0.7
idna==2.5
lxml==3.8.0
Markdown==2.6.8
markdown2==2.3.4
MySQL-python==1.2.5
premailer==3.1.0
pytz==2017.2
requests==2.18.1
urllib3==1.21.1
uWSGI==2.0.15
django-redis==4.8.0


スクリプトの実行に成功すると、環境は一般的に構築され、次はappを作成し、インタフェースを開発します.

2有用な知識点


(1)クエリー・セットのマージとデリバリー
qs1 = Pathway.objects.filter(label__name='x')
qs2 = Pathway.objects.filter(reaction__name='A + B >> C')
qs3 = Pathway.objects.filter(inputer__name='WeizhongTu')
 
#      
qs = qs1 | qs2 | qs3
             
 
#     
qs = qs.distinct()

(2)QuerySetオブジェクトの作成方法
>>> from blog.models import Blog
>>> b = Blog(name='Beatles Blog', tagline='All the latest Beatles news.')
>>> b.save()
 
  ,       
#    1
Author.objects.create(name="WeizhongTu", email="[email protected]")
 
#    2
twz = Author(name="WeizhongTu", email="[email protected]")
twz.save()
 
#    3
twz = Author()
twz.name="WeizhongTu"
twz.email="[email protected]"
twz.save()
 
#    4,      ,      ,      (      True,         False)
Author.objects.get_or_create(name="WeizhongTu", email="[email protected]")
#    (object, True/False)

参考資料:


(1)http://code.ziqiangxuetang.com/django/django-install.html