Django 笔记2
Django 建立一个应用
建立第一个应用
python manage.py startapp polls
修改 bookpro/settings.py
# 添加自己新建的应用
INSTALLED_APPS = [
'polls',
# ....
]
通常, INSTALLED_APPS 默认包括了以下 Django 的自带应用:
django.contrib.admin -- 管理员站点, 你很快就会使用它。
django.contrib.auth -- 认证授权系统。
django.contrib.contenttypes -- 内容类型框架。
django.contrib.sessions -- 会话框架。
django.contrib.messages -- 消息框架。
django.contrib.staticfiles -- 管理静态文件的框架。
这些应用被默认启用是为了给常规项目提供方便。
建立请求路径
在polls
目录中 新建文件 urls.py
内容
# 引入
from django.urls import path, include
from . import views
# 建立路径
urlpatterns = [
# 请求路径 path("路径字段", 处理函数, 别名)
path("", views.index, name="index"),
path("info", views.infofun, name='info'),
]
在 bookpro/urls.py
中添加对polls的路径引用
from django.urls import path, include
urlpatterns = [
path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
]
建立视图
在polls/views.py
中
from django.http import HttpResponse
# Create your views here.
def index(request):
return HttpResponse("hello index")
def infofun(request):
return HttpResponse("hello infofun")
建立数据模型
在polls/models.py
中
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
class Choice(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
然后迁移至数据库中
python manage.py makemigrations
python manage.py migrate
注册模型后台管理
在polls/admin.py
中
from django.contrib import admin
# Register your models here.
from . import models
admin.site.register(models.Question)
admin.site.register(models.Choice)
重启或刷新浏览器访问