学习django
我使用的是python3.4,Django是1.10.2,mysql.connector
创建第一个项目
-
第一步
#创建一个项目
E:\Git>python d:\Python34\Scripts\django-admin.py startproject HelloWorld
E:\Git\HelloWorld>cd HelloWorld
#开始运行服务器
E:\Git\HelloWorld>python manage.py runserver 0.0.0.0:8000
-
第二步
在HelloWorld里面的HelloWorld里创建一个view.py的文件
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello World!")
-
第三步
修改urls.py的代码为
from django.conf.urls import url
from HelloWorld.view import hello
urlpatterns = [
('^hello/$',hello),
]
-
第四步
这是在浏览器的显示。
Django模板
Django模板(参考)
http://www.runoob.com/django/django-template.html
Djange模型
如果你使用的是django+mysql.connector,那么settings.py的内容就需要改成
DATABASES = {
'default': {
'ENGINE': 'mysql.connector.django',
'NAME':'test',
'USER':'root',
'PASSWORD':'123',
'HOST':'localhost',
'PORT':'3306',
}
}
创建表,必须用
E:\Git\HelloWorld>python manage.py makemigrations TestModel
No changes detected in app 'TestModel'
数据库操作
-
添加数据
from django.http import HttpResponse
from TestModel.models import Test
# 数据库操作
def testdb(request):
test1 = Test(name='w3cschool.cc')
test1.save()
return HttpResponse("<p>数据添加成功!</p>")
-
获取数据
from django.http import HttpResponse
from TestModel.models import Test
# 数据库操作
def testdb(request):
# 初始化
response = ""
response1 = ""
# 通过objects这个模型管理器的all()获得所有数据行,相当于SQL中的SELECT * FROM
list = Test.objects.all()
# filter相当于SQL中的WHERE,可设置条件过滤结果
response2 = Test.objects.filter(id=1)
# 获取单个对象
response3 = Test.objects.get(id=1)
# 限制返回的数据 相当于 SQL 中的 OFFSET 0 LIMIT 2;
Test.objects.order_by('name')[0:2]
#数据排序
Test.objects.order_by("id")
# 上面的方法可以连锁使用
Test.objects.filter(name="w3cschool.cc").order_by("id")
# 输出所有数据
for var in list:
response1 += var.name + " "
response = response1
return HttpResponse("<p>" + response + "</p>")
-
更新数据
from django.http import HttpResponse
from TestModel.models import Test
# 数据库操作
def testdb(request):
# 修改其中一个id=1的name字段,再save,相当于SQL中的UPDATE
test1 = Test.objects.get(id=1)
test1.name = 'w3cschool菜鸟教程'
test1.save()
# 另外一种方式
#Test.objects.filter(id=1).update(name='w3cschool菜鸟教程')
# 修改所有的列
# Test.objects.all().update(name='w3cschool菜鸟教程')
return HttpResponse("<p>修改成功</p>")
-
删除数据
# 数据库操作
def testdb(request):
# 删除id=1的数据
test1 = Test.objects.get(id=1)
test1.delete()
# 另外一种方式
# Test.objects.filter(id=1).delete()
# 删除所有数据
# Test.objects.all().delete()
return HttpResponse("<p>删除成功</p>")