python 培训之Django
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的更多相关文章
- 2015老男孩Python培训第八期视频教程
2015老男孩Python培训第八期视频教程,希望您通过本教程的学习,能学会常用方法和技巧.教程从基础知识开始讲解一直到后期的案例实战,完全零基础学习,从初学者的角度探讨分析问题,循序渐进由易到难,确 ...
- 老王Python培训视频教程(价值500元)【基础进阶项目篇 – 完整版】
老王Python培训视频教程(价值500元)[基础进阶项目篇 – 完整版] 教学大纲python基础篇1-25课时1.虚拟机安装ubuntu开发环境,第一个程序:hello python! (配置开发 ...
- 曾Python培训讲师-2年Python开发无包装简历-20191217-可公开
目录 个人介绍 技能介绍 项目经历 自我评价 简历非完整版,需要完整版看下述信息,禁止任何一切私人用途.转发 我生日是27号,那就27元一份,有需求的来购买!只会涨价不会降价,大概卖10份涨1元:曾P ...
- Python攻关之Django(一)
课程简介: Django流程介绍 Django url Django view Django models Django template Django form Django admin (后台数据 ...
- python框架之django
python框架之django 本节内容 web框架 mvc和mtv模式 django流程和命令 django URL django views django temple django models ...
- Python Virtualenv运行Django环境配置
系统: RHEL6.5 版本说明: Python-3.5.0 Django-1.10.4 virtualenv:为每个项目建立不同的/独立的Python环境,你将为每个项目安装所有需要的软件包到它们各 ...
- 【Python实战】Django建站笔记
前一段时间,用Django搭建一个报表分析的网站:借此正好整理一下笔记. 1. 安装 python有包管理工具pip,直接cd Python27/Scripts,输入 pip install djan ...
- 智普教育Python培训之Python开发视频教程网络爬虫实战项目
网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 01.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 02.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Pytho ...
- python学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
随机推荐
- Spearman Rank(斯皮尔曼等级)相关系数及MATLAB实现
转自:http://blog.csdn.net/wsywl/article/details/5859751 Spearman Rank(斯皮尔曼等级)相关系数 1.简介 在统计学中,斯皮尔曼等级相关系 ...
- android之读取联系人信息
联系人信息被存放在一个contacts2.db的数据库中 主要的两张表 读取联系人 读取联系人需要知道联系人内容提供者的地址,以及对应的操作对象.一般情况下操作对象是的命名方式和表明是一致的. 布局文 ...
- 屠龙之路_战胜View&对DataBase猛烈进攻_ThirdDay
避开狮身人面兽攻击的屠龙战士继续前行.突然眼见一黑,战士们进到迷宫里,机智的战士用一根羊毛线绑在迷宫入口处,少年们手握着羊毛线,在迷宫里继续前行.在那样一个拐角处,遇到了恶龙的手下View&D ...
- 【Quartz】Quartz的搭建、应用(单独使用Quartz)
Quartz在Java构建的系统中,是十分常用的定时任务框架. 本文,记录.介绍Quartz的简单入门的单独搭建(此文入门学习Quartz为主,并非基于Spring托管形式). > 参考的优秀资 ...
- Ubuntu 14.04 安装最新稳定版Nginx 1.6.0
如果已经安装,请先卸载sudo apt-get remove nginx最新的稳定版Nginx 1.6.0在ubuntuupdates ppa库中提供,网址http://www.ubuntuupdat ...
- Django - 获取请求方式
//获取请过来得得请求类型 method = request.method 通过Django 的form 判断用户输入是否通过验证 check = forms.LoginFrom(request.PO ...
- Jquery-input获取单选框选择的按钮
$('input[name="radio"]:checked').val();
- C#把datetime类型的日期转化成年月日或其他格式方法总结
日期格式:yyyyMMdd HH:mm:ss(注意此字符串的字母大小写很严格) yyyy:代表年份MM: 代表月份dd: 代表天HH: 代表小时(24小时制)mm: 代表分钟ss: 代表秒D ...
- 【POJ 2528】Mayor’s posters(线段树+离散化)
题目 给定每张海报的覆盖区间,按顺序覆盖后,最后有几张海报没有被其他海报完全覆盖.离散化处理完区间端点,排序后再给相差大于1的相邻端点之间再加一个点,再排序.线段树,tree[i]表示节点i对应区间是 ...
- js-JavaScript高级程序设计学习笔记4
第六章 面向对象的程序设计 1.面向对象的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.如python.ES中没有类的概念. 2.ES的对象可以想象成散列表 ...