Django 的命令及简单例子
第一步:下载mysql驱动
cmd进入创建好的django项目目录:然后使用下面的命令创建一个项目testdj。
第二步:在settings.py中配置mysql连接参数(没有mysql的先装mysql)
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '数据库名(你得先在mysql中创建数据库)', 'USER':'mysql用户名(如root)', 'PASSWORD':'密码(如123456789)', 'HOST':'域名(127.0.0.1或localhost)', 'PORT':'端口号(3306)', }}第三步:在models.py中创建model类
from django.db import models# Create your models here. 类似于MVC架构中的Modelclass Article(models.Model): title = models.CharField(max_length=60,default='title') content = models.TextField(null=True)1、cmd进入django项目路径下
2、Python manage.py migrate #创建表结构,非model类的其他表,django所需要的
3、python manage.py makemigrations app名 #做数据迁移的准备
如:python manage.py makemigrations myblog myblog是我项目中的app名字
4、python manage.py migrate # 执行迁移,创建medel表结构
第五步:开始写代码吧
首先说下需求,就是在代码里向MySQL中插入一条记录并显示到页面
1、在templates下新建一个模板,其实就是页面,如index.html
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><h2> {{article.title}}</h2>内容:{{ article.content }}</body></html>2、配置URL
1、在项目下的urls.py(注意是项目下的urls.py)配置url映射:
from django.conf.urls import url,includefrom django.contrib import admin#根url配置urlpatterns = [ #url(页面正则,响应的方法名称) url(r'^admin/', admin.site.urls), url(r'^myblog/',include('myblog.urls')),]include('myblog.urls')是我们接下来要配置的二级url,在app下的urls.py中配置from django.conf.urls import urlfrom django.contrib import adminfrom . import viewsurlpatterns = [ #url(页面正则,响应的方法名称) ^index$:表示要以index开始和结束,正则约束 url(r'^index/$',views.index),]3、写响应函数:如像数据中插入一个数据,并显示在页面上
from django.shortcuts import renderfrom django.http import HttpResponsefrom myblog.models import Article# Create your views here.def index(request): article = Article(title='标题',content='内容!') article.save() return render(request,'index.html',{'article':article}我这里使用的pycharm,点击运行按钮即可,没有pycharm的可使用:
提交表单例子:
newarticle.html in testapp/templates 文件夹
1 <html>
2 <head>
3 <meta charset = "UTF-8">
4 <title>新添加一篇文章</title>
5 </head>
6 <body>
7 <form method="POST">
8 {% csrf_token %}
9 标题:<input type="text" name="articletitle" value="" /><br/>
10 作者:<input type="text" name="author" value="" /><br/>
11 文章内容:<textarea name="content" clos="100" rows="10" wrap="true"></textarea><br/>
12 <input type="submit" value="提交" />
13 </form>
14 </body>
15 </html>
testapp/views.py:
1 #__*__ encoding:UTF-8 __*__
2 from django.shortcuts import render
3 from django.http import HttpResponse
4 from testapp.models import Article
5
6 # Create your views here.
12
13 def newarticle(request):
14 if request.method == "GET":
15 return render(request,'newarticle.html')
16 if request.method == "POST":
17 print(request)
18 articletitle = request.POST.get('articletitle')
19 content = request.POST.get('content')
20 author = request.POST.get('author')
21 article = Article(title=articletitle,content=content,author=author)
22 article.save()
23 return render(request,'index.html',{'article':article})
urls.py in testapp:
from django.conf.urls import url
2 from django.contrib import admin
3 from . import views
4 urlpatterns = [
5 url(r'^index/$',views.index),
6 url(r'^newarticle/$',views.newarticle),
7 ]
urls.py under testdj/ folder:
from django.conf.urls import url,include
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^testapp/',include('testapp.urls')),
]
settings.py under testdj/ folder:
set ALLOWED_HOSTS with '*' for all ipaddresses and hostname, or set it with a special ipddress or hostname
ALLOWED_HOSTS = ['*']
or
ALLOWED_HOSTS = ['www.abyee.com']
For deploy on apache server:
also need to edit the wsgi.py file under project folder:
here is /usr/lib/djangotest/testdj/testdj/wsgi.py
code:
import os
from os.path import dirname,abspath
import sys
from django.core.wsgi import get_wsgi_application
project_dir = dirname(dirname(abspath(__file__)))
sys.path.insert(0,project_dir)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "testdj.settings")
application = get_wsgi_application()
原文:https://www.jb51.net/article/118896.htm
Django 的命令及简单例子的更多相关文章
- 一个简单例子:贫血模型or领域模型
转:一个简单例子:贫血模型or领域模型 贫血模型 我们首先用贫血模型来实现.所谓贫血模型就是模型对象之间存在完整的关联(可能存在多余的关联),但是对象除了get和set方外外几乎就没有其它的方法,整个 ...
- kubernetes进阶之一:简单例子
kubernetes 从一个简单例子开始 参考 <kubernetes 权威指南>一节的 从一个简单例子开始,操作实录. 一.Java Web 应用结构 二.启动MySql服务 1.首先为 ...
- Linux笔记 #09# Tomcat多开以及Nginx负载均衡简单例子
索引 Tomcat怎样多开.. 1.添加环境变量(最基础.关键的步骤!) 2.改catalina.sh 3.改相关端口 Nginx负载均衡简单例子 Tomcat怎样多开.. 演示一下如何开两个(开n个 ...
- Spark简介安装和简单例子
Spark简介安装和简单例子 Spark简介 Spark是一种快速.通用.可扩展的大数据分析引擎,目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark S ...
- web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例
Django基础一之web框架的本质 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单 ...
- Drools简单例子
转自:http://www.blogjava.net/diggbag/articles/359347.html 1.Drools简单例子 首先是搭建一个可供进行Drools开发的框架.Jboss官方推 ...
- Heka 最简单例子
技术人员学习都是从简单例子开始的, Heka的应用也是从简单开始的. 需求: 监控一个日志文件的内容, 在标准输出显示出来. 操作步骤: 使用下载好或者编译好的 heka 已经编译好的 rel ...
- Django学习 之 Django安装与一个简单的实例认识
一.Django简介 1.MVC与MTV模型 (1)MVC模型 Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的. ...
- 7z命令行简单使用
7z命令行简单使用 网上有很多博客都有记录7z的命令行使用方式,但看起来乱起八糟的,不知所云. 急于使用者可以直接看实例 注:我仅仅记录我认为常用的命令,毕竟没有那么多的精力去学习不常用的东西. 简介 ...
随机推荐
- JavaScript 里 var a =a ||{}
首先,搞明白||的意思. 1.在js里面,||运算符,比如(A||B)有个很有意思的用处: 2.系统先判断A表达式的布尔值,是真是假.如果为真,直接返回A.如果为假,直接返回B(不会判断B是什么类型) ...
- jquery-ui sortable 在拖动换位置时改变元素的大小导致占位与实际不一致
使用jquery ui sortable时 需求是在拖动的时候要隐藏一部分元素,然后按照隐藏后的元素高度换位, 解决方案是修改源码jquery-ui.js, _mouseStart方法中开头增加 if ...
- python 录入姓名和成绩, 并且求平均值
lst = []while 1: a = input("请输入学生的姓名和成绩(姓名_成绩), 输入Q退出录入:") if a.upper() == "Q": ...
- [LeetCode] 115. Distinct Subsequences_ Hard tag: Dynamic Programming
Given a string S and a string T, count the number of distinct subsequences of S which equals T. A su ...
- 自定义bash提示符
http://adamcavendish.is-programmer.com/posts/35659.html
- Git命令(Git版本:Linux 2.14.3)
常用 git status 跟踪状态git commit -m "xxx" yyy.cppgit pull git pushgit mergetool --tool=meld 合并 ...
- ROS kinetic语音识别
1.安装依赖 1.1安装ros-kinetic-audio-common sudo apt-get install ros-kinetic-audio-common 1.2 安装libasound2 ...
- 福州大学软件工程1916|W班 第2次作业成绩排名
作业链接: 结对第一次-原型设计(文献摘要热词统计) 评分准则: 本次作业评分分为两部分,一部分是博客分数(满分25分),另一部分是工程能力分数(满分30分). 博客分数评分标准: 1.在随笔开头请加 ...
- Windbg程序调试系列3-线程阻塞问题
上一篇博文给大家分享了使用Windbg分析内存泄露问题: Windbg程序调试系列2-内存泄露问题 本篇我们继续跟大家分享,如何分析解决线程阻塞问题. 从根本上讲,线程阻塞属于程序Hang的一种,其表 ...
- class多态
多态代码实现: class Animal(object): def __init__(self, name): # Constructor of the class self.name = name ...