1.Install 

sudo apt-get install python-pip
sudo pip install django==1.8

 2. Create Project

django-admin startproject projname

3. Create App

cd prjname
python manage.py startapp appname

4. Center URL&&setting

Control center in projname/projname/
##url config
Url Pattern setting
url(r^$,include('tcmwebapp.urls')),
url(r'^tcmwebapp',include('tcmwebapp.urls')),
## static url setting
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

## setting config
INSTALL APP( appname )

5. app urls&&view,

## url config
cd appname/
touch urls.py
url(r'xxx',views.fucname,name=XXX)
### views.py
def fucname():
return HttpResponse("helloworld")
cd projname/
python manage.py runserver
(tip:0.0.0.0:)
chrome localhost:8090
### helloworld

6. Global Config

cd projname/
mkdir static
mkdir templates
cd appname/
mkdir static/appname
mkdir templates/appname

7. static&templates&setting AutoTool: djangobower

7.1 Install.

sudo apt-get install python-software-properties
sudo apt-get install node
sudo apt-get install nodejs
sudo apt-get install npm
sudo apt-get install git
curl -SL http://deb
.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install nodejs-legacy
sudo npm install -g bower
sudo pip install django-bower

7.2 Config

http://django-bower.readthedocs.io/en/latest/index.html
import os PROJECT_ROOT = os.path.abspath(
os.path.join(os.path.dirname(__file__), ".."),
) DEBUG = True
TEMPLATE_DEBUG = DEBUG DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'db',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
} STATIC_ROOT = os.path.join(PROJECT_ROOT, 'static') STATIC_URL = '/static/' BOWER_COMPONENTS_ROOT = os.path.join(PROJECT_ROOT, 'components') STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'djangobower.finders.BowerFinder',
) SECRET_KEY = 'g^i##va1ewa5d-rw-mevzvx2^udt63@!xu$-&di^19t)5rbm!5' TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
) MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
) ROOT_URLCONF = 'example.urls' WSGI_APPLICATION = 'example.wsgi.application' TEMPLATE_DIRS = (
os.path.join(PROJECT_ROOT, 'templates'),
) INSTALLED_APPS = (
'django.contrib.staticfiles',
'djangobower',
) BOWER_INSTALLED_APPS = (
'jquery',
'underscore',
)

7.2 Use

python manage.py bower_install
python manage.py collectstatic
Change projname center UrlConfig
urlpattern += (settings.STATIC_URL,name=settings.STATIC_Document)
urlpattern +=(settings.MEDIA_URL,name=settings.MEDIA_Document)

8. Design Web Templates

8.1 View distrubution

python manage.py makemigrations
python manage.py migrate
### update database

8.2 create html 

8.2.1 base.html

projectname/templates/base.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE =edge">
<meta name="viewport" content = "width=device-width,initial-scale=1">
<title>
{% block title %}WebNet{% endblock %}
</title>
{% load staticfiles %}
<link rel="stylesheet" href={% static 'bootstrap/dist/css/bootstrap.css' %}>
<script src={% static 'jquery/dist/jquery.min.js' %}></script>
<script src={% static 'bootstrap/dist/js/bootstrap.min.js' %}></script>
{% block head %}
{% endblock %}
</head>
<body>
{% block body %}
{% endblock %}
<div class="scripts">
{% block scripts %}
{% endblock %}
</div>
</body>
</html>

8.2.3 user_base.html

{% extends "base.html" %}
{% load staticfiles %}
{% block head %}
<!-- <link rel="stylesheet" href={% static 'usercenter/css/style.css' %}>
--> {% endblock %}
{% block scripts %}
{% endblock %}

8.3.4 web html

{% extends "netapp/base_netapp.html" %}
{% block body %}
<link href="/static/netapp/css/search.css" rel="stylesheet"> <section class="content">
<div class="container-fluid">
<div class="form">
<div class="form-title">心脏毒性网络</div>
<div class="form-body">
<form class="navbar-form" action="/netapp/search" method="post" role="search"> {% csrf_token %}
<table>
<input type="text" class="form-control" name="chem_name" size="60" maxlength="60" placeholder="Chemical Name">
<button type="submit" class="btn btn-danger navbar-btn">Submit</button>
</table>
</form>
</div>
</div>
</div>
</section>
{% endblock %}
{% block scripts %}
<!-- <script src = "/static/usercenter/js/userApp.js"></script> -->
{% endblock %}

8.3.5 css add

.form{
margin-top: 150px;
margin-right: 10px;
margin-left: 10px;
text-align: center;
} .form-title{
font-weight:bold;
font-family:arial,verdana,sans-serif;
font-size:18px;
}

9. Design View

from django.shortcuts import render
from django.http import HttpResponse
from tasks import chem_gene_query
# Create your views here.
def index(request):
return render(request,"netapp/index.html") def search(request):
if request.method == "POST":
message = request.POST["chem_name"]
result = chem_gene_query(message)
return render(request,"netapp/result.html",{"result":result})
return render(request,"netapp/index.html")

10. add scripts in project 

#!/usr/bin/env/python
# -*- coding:UTF-8 -*-
from __future__ import print_function
import MySQLdb
import sys def mysql_connect():
try:
conn = MySQLdb.connect(host="localhost",user="tcd_net",
passwd='tcd_net',db='ctd_net',port=3306,charset='utf8')
cur = conn.cursor()
return conn,cur
except MySQLdb.Error,e:
print(e.args)
sys.exit(1) def query_db(conn,cursor,command):
try:
cursor.execute(command)
conn.commit()
results = cursor.fetchall()
return results
except MySQLdb.Error,e:
print(e.args)
sys.exit(1) def chem_gene_query(chem):
conn,cur = mysql_connect()
query_command = """select chemicalName,chemicalID,casId,
genesymbol,geneid,geneforms,organism,organismid,interaction,
interactionActions,pubmedid from chem_gene where chemicalName = "%s";"""%chem
chem_gene_result = query_db(conn,cur,query_command)
result = []
keys = ["chemicalName","chemicalID","casId","genesymbol",
"geneid","geneforms","organism","organismid",
"interaction","interactionActions","pubmedid"]
for res in chem_gene_result:
out = {}
for i in range(len(res)):
out[keys[i]] = res[i]
if out:
result.append(out)
return result

11. Design results Display

{% extends "netapp/base_netapp.html" %}
{% block body %}
<link href="/static/netapp/css/search.css" rel="stylesheet"> <section class="content">
<div class="container-fluid">
<table class="table table-bordered table-condensed">
<caption>SearchResults</caption>
<thead>
<tr>
<th>chemicalName</th>
<th>genesymbol</th>
<th>interactionActions</th>
<th>pubmedid</th>
</tr>
</thead>
{% for i in result %}
<tbody>
<tr>
<td>{{ i.chemicalName }}</td>
<td>{{ i.genesymbol }}</td>
<td>{{ i.interactionActions }}</td>
<td>{{ i.pubmedid }}</td>
</tr>
</tbody>
{% endfor %}
</table>
</div>
</section>
{% endblock %}
{% block scripts %}
<!-- <script src = "/static/usercenter/js/userApp.js"></script> -->
{% endblock %}

python 培训之Django的更多相关文章

  1. 2015老男孩Python培训第八期视频教程

    2015老男孩Python培训第八期视频教程,希望您通过本教程的学习,能学会常用方法和技巧.教程从基础知识开始讲解一直到后期的案例实战,完全零基础学习,从初学者的角度探讨分析问题,循序渐进由易到难,确 ...

  2. 老王Python培训视频教程(价值500元)【基础进阶项目篇 – 完整版】

    老王Python培训视频教程(价值500元)[基础进阶项目篇 – 完整版] 教学大纲python基础篇1-25课时1.虚拟机安装ubuntu开发环境,第一个程序:hello python! (配置开发 ...

  3. 曾Python培训讲师-2年Python开发无包装简历-20191217-可公开

    目录 个人介绍 技能介绍 项目经历 自我评价 简历非完整版,需要完整版看下述信息,禁止任何一切私人用途.转发 我生日是27号,那就27元一份,有需求的来购买!只会涨价不会降价,大概卖10份涨1元:曾P ...

  4. Python攻关之Django(一)

    课程简介: Django流程介绍 Django url Django view Django models Django template Django form Django admin (后台数据 ...

  5. python框架之django

    python框架之django 本节内容 web框架 mvc和mtv模式 django流程和命令 django URL django views django temple django models ...

  6. Python Virtualenv运行Django环境配置

    系统: RHEL6.5 版本说明: Python-3.5.0 Django-1.10.4 virtualenv:为每个项目建立不同的/独立的Python环境,你将为每个项目安装所有需要的软件包到它们各 ...

  7. 【Python实战】Django建站笔记

    前一段时间,用Django搭建一个报表分析的网站:借此正好整理一下笔记. 1. 安装 python有包管理工具pip,直接cd Python27/Scripts,输入 pip install djan ...

  8. 智普教育Python培训之Python开发视频教程网络爬虫实战项目

    网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 01.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 02.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Pytho ...

  9. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

随机推荐

  1. Spearman Rank(斯皮尔曼等级)相关系数及MATLAB实现

    转自:http://blog.csdn.net/wsywl/article/details/5859751 Spearman Rank(斯皮尔曼等级)相关系数 1.简介 在统计学中,斯皮尔曼等级相关系 ...

  2. android之读取联系人信息

    联系人信息被存放在一个contacts2.db的数据库中 主要的两张表 读取联系人 读取联系人需要知道联系人内容提供者的地址,以及对应的操作对象.一般情况下操作对象是的命名方式和表明是一致的. 布局文 ...

  3. 屠龙之路_战胜View&对DataBase猛烈进攻_ThirdDay

    避开狮身人面兽攻击的屠龙战士继续前行.突然眼见一黑,战士们进到迷宫里,机智的战士用一根羊毛线绑在迷宫入口处,少年们手握着羊毛线,在迷宫里继续前行.在那样一个拐角处,遇到了恶龙的手下View&D ...

  4. 【Quartz】Quartz的搭建、应用(单独使用Quartz)

    Quartz在Java构建的系统中,是十分常用的定时任务框架. 本文,记录.介绍Quartz的简单入门的单独搭建(此文入门学习Quartz为主,并非基于Spring托管形式). > 参考的优秀资 ...

  5. Ubuntu 14.04 安装最新稳定版Nginx 1.6.0

    如果已经安装,请先卸载sudo apt-get remove nginx最新的稳定版Nginx 1.6.0在ubuntuupdates ppa库中提供,网址http://www.ubuntuupdat ...

  6. Django - 获取请求方式

    //获取请过来得得请求类型 method = request.method 通过Django 的form 判断用户输入是否通过验证 check = forms.LoginFrom(request.PO ...

  7. Jquery-input获取单选框选择的按钮

    $('input[name="radio"]:checked').val();

  8. C#把datetime类型的日期转化成年月日或其他格式方法总结

    日期格式:yyyyMMdd HH:mm:ss(注意此字符串的字母大小写很严格) yyyy:代表年份MM:  代表月份dd:  代表天HH:  代表小时(24小时制)mm:  代表分钟ss:  代表秒D ...

  9. 【POJ 2528】Mayor’s posters(线段树+离散化)

    题目 给定每张海报的覆盖区间,按顺序覆盖后,最后有几张海报没有被其他海报完全覆盖.离散化处理完区间端点,排序后再给相差大于1的相邻端点之间再加一个点,再排序.线段树,tree[i]表示节点i对应区间是 ...

  10. js-JavaScript高级程序设计学习笔记4

    第六章 面向对象的程序设计 1.面向对象的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.如python.ES中没有类的概念. 2.ES的对象可以想象成散列表 ...