|||
打开命令行 进入manage.py的同级目录 命令行输入:python manage.py startapp blog 添加应用名到sittings.py中的Installed_apps里
首先确认文件夹
命令行输入:python manage.py startapp blog
添加应用名blog
D:\CODE\MYBLOG\MYBLOG\BLOG
│ admin.py
│ apps.py
│ models.py
│ tests.py
│ views.py
│ init.py
└─migrations
└─init__.py
migrations
数据迁移模块,有Django自动生成
admin.py
该应用的后台管理文件
app.py
当前应用的配置文件 Djan1.9以后生成
models.py
数据模块,使用ORM框架,类似于MVC结构的models
tests.py
自动化测试模块,编写自动化测试代码,
views.py
**执行的响应代码**,代码逻辑处理的主要地点,项目的主要编写区
编辑views.PY
编辑blog.views
每个响应对应一个函数,函数必须返回一个响应
函数必须存在一个参数,一般约定为request
每个相应(函数)对应一个URL
代码如下:
from django.shortcuts import render from django.http import HttpResponse .# Create your views here. def index(request): return HttpResponse('hello word!')
说明
from django.http import HttpResponse 从django中引用HttpResponse函数 用def定义一个函数,作为请求返回hello word
2.编辑URLS.PY
每个URL都已url的形式写出来
url函数放在urlpatterns列表中
url函数三个参数:URL(正则),对应方法,名称
from django.conf.urls import include, url from django.contrib import admin import blog.views as bv urlpatterns = ( url(r'^index/',bv.index ), url(r'^admin/', admin.site.urls), )
说明
import blog.views as bv 引用blog下的views 命名为bv url(r'^index/',bv.index ), url 正则表达式为index,对应方法为blog内的view.py中的index。
浏览器访问时要加上正则表达式“index”,否则报错 http://localhost:8000/index/
3. 第二种配置URl的方法
命令行输入:python manage.py startapp blog2
添加应用名blog2 sitting.py 中 INSTALLED_APPS
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog', 'blog2' ]
编辑代码
blog2.view.py
from django.http import HttpResponse # Create your views here. def index(request): return HttpResponse('<h1>hello This is blog2!<h1>')
在根urls.py中引入include
在APP目录下创建urls.py文件 格式与根urls.py相同 根urls.py中的url函数的第二个参数改为include(‘app名称.urls’) 注意 根url.py针对APP配置的URL名称,是该APP所有URL的总路径 配置URL时注意正则表达式结尾符号$和/ 在URLS.py中urlpatterns = ( url(r'^$',views.index), )每一项url的配置都以英文“,”结尾
APP下的URLS.PY
from django.conf.urls import url from . import views urlpatterns = ( url(r'^$',views.index), )
根目录下的URLS.PY
from django.conf.urls import include, url from django.contrib import admin import blog.views as bv urlpatterns = ( url(r'^index/',bv.index ), url(r'^admin/', admin.site.urls), url(r'^index2',include('blog2.urls')), ) url(r'^index2',include('blog2.urls')), 是用第二种方法配置的,常用这种方法
自此项目的目录如下
D:. └─myblog │ db.sqlite3 │ manage.py │ ├─.idea │ encodings.xml │ misc.xml │ modules.xml │ myblog.iml │ workspace.xml │ ├─blog │ │ admin.py │ │ apps.py │ │ models.py │ │ tests.py │ │ views.py │ │ __init__.py │ │ │ ├─migrations │ │ │ __init__.py │ │ │ │ │ └─__pycache__ │ │ __init__.cpython-37.pyc │ │ │ └─__pycache__ │ admin.cpython-37.pyc │ models.cpython-37.pyc │ views.cpython-37.pyc │ __init__.cpython-37.pyc │ ├─blog2 │ │ admin.py │ │ apps.py │ │ models.py │ │ tests.py │ │ urls.py │ │ views.py │ │ __init__.py │ │ │ ├─migrations │ │ │ __init__.py │ │ │ │ │ └─__pycache__ │ │ __init__.cpython-37.pyc │ │ │ └─__pycache__ │ admin.cpython-37.pyc │ models.cpython-37.pyc │ urls.cpython-37.pyc │ views.cpython-37.pyc │ __init__.cpython-37.pyc │ └─myblog │ settings.py │ urls.py │ wsgi.py │ __init__.py │ └─__pycache__ settings.cpython-37.pyc urls.cpython-37.pyc wsgi.cpython-37.pyc __init__.cpython-37.pyc
得到的两个页面 http://localhost:8000/index/
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-9-24 06:42
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社