Django 学习总结(一)
1.安装Django:
pip install Django
2.打开cmd,进入指定开发目录,输入:
django-admin startproject DjangoProject
#新建django项目
进入创建的DjangoProject目录,输入:
django-admin startapp DjangoApp
#新建django应用
3.当前整个Django开发目录下结构应该为
└─DjangoProject
│ manage.py #一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互
│
├─DjangoApp
│ │ admin.py
│ │ apps.py
│ │ models.py
│ │ tests.py
│ │ views.py
│ │ __init__.py
│ │
│ └─migrations
│ __init__.py
│
└─DjangoProject
settings.py #该 Django 项目的设置/配置
urls.py #该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"
wsgi.py #一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目
__init__.py # 一个空文件,告诉 Python 该目录是一个 Python 包
4.修改项目文件夹下配置文件setting.py
INSTALLED_APPS 中在最后一行添加新增app名称DjangoApp
DATABASES 设置格式如下
{
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '#数据库名称',
'USER': '#数据库用户名',
'PASSWORD':'#数据库密码',
'HOST':'#IP地址',
'PORT':'#端口号',
}
}
LANGUAGE_CODE 修改为 'zh-Hans'
TIME_ZONE 修改为 'Asia/Shanghai'
5.应用文件夹下模型文件models.py中设置模型类
例:
class User(models.Model):
class Meta:
db_table = 'user'
id = models.AutoField(primary_key = True)
name = models.CharField(max_length = 48, null = False)
email = models.CharField(max_length = 48, null = False)
password = models.CharField(max_length = 128, null = False)
time = models.DateTimeField(auto_now_add=True)
idDelete = models.BooleanField(default=False)
def __repr__(self):
return "".format(self.id,self.name)
__str__ = __repr__
常用字段类型,详细请见开发文档:
https://docs.djangoproject.com/zh-hans/2.2/ref/models/fields/#model-field-types
6.在数据迁移(在项目文件夹下执行)
python manage.py makemigrations
#生成迁移文件
python manage.py migrate
#数据迁移
7.创建超级用户(在项目文件夹下执行)
python manage.py createsuperuser
8.在应用文件夹下admin.py文件中添加注册模型
例:
from .models import User
admin.site.register(User)
9.建立多级路由
在项目中的urls.py中设置:
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('index', include('DjangoApp.urls')),
]
在应用文件下新建urls.py并设置:
from django.urls import path
from .views import reg
urlpatterns = [
path('regs/', reg),
]
8.设置视图文件
在views.py中设置
from django.shortcuts import render
from django.http import JsonResponse,HttpRequest,HttpResponse,HttpResponseBadRequest
from .models import User
def reg(request):
user = User.objects.all()
return HttpResponse("Hello World!")
#return render(request, 'regs.html' ,{"info":"Hello World!"}) #使用模板情况下应用该语句,请勿将该中文备注放进文件中
9.启动服务
python manage.py runserver
启动服务后访问http://127.0.0.1:8000/index/regs/
看到Hello World即成功
10.设置模板
与DjangoApp下新建文件夹 templates
添加文件regs.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Home Page</title>
</head>
<body>
<ul>
{% for i in info %}
{% if forloop.counter|divisibleby:"2" %}
<li style="color:red">{{ i }}</li>
{% else %}
<li style="color:blue">{{ i }}</li>
{% endif %}
{% endfor %}
</ul>
</body>
</html>
在views.py中使用注释语句,重新刷新网页http://127.0.0.1:8000/index/regs/,即使用模板打开网页。
posted on 2019-06-05 11:11 DoubleUncle 阅读(288) 评论(0) 收藏 举报
浙公网安备 33010602011771号