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的命令行使用方式,但看起来乱起八糟的,不知所云. 急于使用者可以直接看实例 注:我仅仅记录我认为常用的命令,毕竟没有那么多的精力去学习不常用的东西. 简介 ...
随机推荐
- springcloud第二步:发布服务提供者
创建项目service-member Maven依赖 <parent> <groupId>org.springframework.boot</groupId> &l ...
- Python加密保护-对可执行的exe进行保护
Python 是一种面向对象的解释型计算机程序设计语言,Python 语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序. 在计算机内部,Python解释器把源代码转换成称为字节的中间形式, ...
- linux 查看磁盘文件大小
du -sh : 查看当前目录总共占的容量.而不单独列出各子项占用的容量 du -lh --max-depth=1 : 查看当前目录下一级子文件和子目录占用的磁盘容量 df -h 查看整个服务器的磁盘 ...
- Markdown学习示例
Markdown学习示例 什么是Markdown Markdown是一种在web显示带样式风格文本的方式.你能通过它控制文本的字体样式.插入图片.插入列表等.通常,Markdown使用一些特殊的非字母 ...
- C# Unity的使用
Unity是微软推出的IOC框架, 使用这个框架,可以实现AOP面向切面编程,便于代码的后期维护,此外,这套框架还自带单例模式,可以提高程序的运行效率. 下面是我自己的案例,以供日后参考: 使用VS2 ...
- java操作git简单实现
记录瞬间 import org.eclipse.jgit.api.Git; import org.eclipse.jgit.api.ListBranchCommand; import org.ecli ...
- 学Python的感受
这门课程已经上了两周了,虽然还没学到什么实质上的东西,只是做了几道题,但是我也感受到了Python的魅力.我感觉这门课真的很有用,比如老师所说的网络爬虫,我对这个非常感兴趣.再说说老师的教学方式,理论 ...
- openssl源代码结构
Openssl整个软件包主要包括三个主要的功能模块:密码算法库,SSL协议库,应用程序: 应用程序:主要包括密钥生成,证书管理,格式转换,数据加密,签名,SSL测试等. evp,对称算法,非对称算法, ...
- OpenStack-Neutron-Fwaas-代码【二】
上一节从代码层面来讲解了fwaas的流程,这里通过具体查看iptables规则来说下应用规则的流程: 1.首先通过命令获取当前路由中的规则 #ip netns exec qrouter-[router ...
- javascript 的线程问题
JavaScript的setTimeout与setInterval是两个很容易欺骗别人感情的方法,因为我们开始常常以为调用了就会按既定的方式执行, 我想不少人都深有同感, 例如 setTimeout( ...