返回顶部

纯手撸Django Web框架实现网站

  纯手撸Django Web框架实现网站

二十分钟小白玩转Django web网站的部署。

 

Django Web框架包含了URL处理、模型、视图、模版四个主要部分。

  • URL处理负责用户请求到视图的映射
  • 视图用于处理用户逻辑
  • 模型用于映射Python对象和数据对象
  • 模板用于展示特定信息的样式给用户

 

1、创建项目

$ django-admin startproject mysite
$ cd mysite/

 settings.py   网站的设置
 urls.py        网站处理请求

 

 

 

2、创建应用

复制代码
$ python manage.py  startapp myweb

 admin.py    管理功能
 apps.py       保存应用程序基本配置
 models.py   模型,
 tests.py   
 urls.py    不存在需单独手动创建,
 views.py   视图
templates/web.html  模板和文件需单独手动创建
复制代码

 

 

 

2.1 处理URL

mysite/urls.py >> myweb/urls.py

复制代码
urlpatterns = [
    path('admin/', admin.site.urls),
    path('myapp/', include('myapp.urls')),
]

### mysite/mysite/urls.py
from django.contrib import admin
from django.urls import path

from django.urls import include

urlpatterns = [
    path('admin/', admin.site.urls),   #将请求转发给app进行处理
    path('myweb', include('myweb.urls')),
]

###  mysite/myweb/urls.py
from django.urls import path
from  . import views

urlpatterns = [
    path('', views.index, name='index'),  #'',在localhost:8080/myweb后面不在添加path,需要时可在添加等同于localhost:8080/myweb/xxx
]


### mysite/myweb/views.py
from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse

# 接收用户的请求,采用标准的httpreponse返回数据
def index(request):
    # 处理模型,指定模板
    return HttpResponse('Hello Django')
复制代码

 

2.2 视图和模板

后续会使用模板目前只返回字符串

复制代码
{% if lastes_question_list %}
    <ul>
    {% for question in latest_question_list %}
        <li><a href="/polls/{{ question.id }}/">{{ question.question_text }}</a></li>
    {% endfor %}
    </ul>
{% else %}
    <p>No polls are available</p>
{% endfor %}
复制代码

 

 

3 运行Django

python manage.py  runserver 0.0.0.0:8080

http://localhost:8080/myweb

 

4 创建管理页面的用户密码

复制代码
#需要运行迁移以更改管理员用户名和密码
python manage.py migrate

#编辑用户名和密码 
$ python manage.py createsuperuser
Username (leave blank to use 'administrator'): wei
Email address: wei@11.com
Password: 
Password (again):
This password is too short. It must contain at least 8 characters.
This password is too common.
This password is entirely numeric.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.


#创建一个超级用户来访问django 
$ python manage.py createsuperuser
Username (leave blank to use 'administrator'): admin
Email address: admin@11.com
Password: 
Password (again):
This password is too short. It must contain at least 8 characters.
This password is too common.
This password is entirely numeric.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.



#再次运行Django即可
 python manage.py  runserver 0.0.0.0:8080
复制代码

 

5 访问测试

5.1 访问制定URL

http://localhost:8080/myweb

 

5.2 访问管理站点

http://localhost:8080/admin

 

 

 

 

 

 

posted @   九尾cat  阅读(96)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2020-07-22 SSH,禁止首次连接的询问过程
点击右上角即可分享
微信分享提示

目录导航