Django App(一) StartApp
经过配置Pycharm在上一次的笔记中,已经解决了编写Django web程序调试的问题,这篇将记录Django官网提供的例子程序!
1.查看Pycharm terminal是否可用,查看安装的Django版本
>python -m django --version
2.创建项目
使用如下命令创建项目:
>django-admin startproject firstPro #这个是上一节中配置过的Django路径下的
执行成功命令之后,来看看Django-admin创建的文件目录结构:
3.启动服务
切换至firstPro目录下,执行如下命令:
>python manage.py runserver #默认启动的url是 http://localhost:8080
#也可以指定端口
>python manage.py runserver localhost:8008
由于Django是轻量级的服务,所以Ctrl+c Terminal结束掉当前命令的时候,Django服务也就销毁了
4.创建网上"投票"App
App和项目的关系:一个项目是一个特定站点配置和App的集合;一个项目可以包含多个App,一个App可以存在于多个项目
运行如下命令:
>python manage.py startapp polls
查看新创创建App的路径:
编写重写polls/views.py,填写如下代码:
from django.http import HttpResponse def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
在polls目录下新建urls.py文件,将Index [action],写入路由polls/urls.py
from django.urls import path from . import views urlpatterns = [
path('', views.index, name='index'),
]
由于polls属于属于,站点的一个App,需要在站点的入口路由配置文件中注册这app,改写firstPro/urls.py如下:
from django.urls import include, path
from django.contrib import admin urlpatterns = [
path('polls/', include('polls.urls')), #include()函数允许指向另一个urls.py配置文件
path('admin/', admin.site.urls),
]
上面的代码,在Urls.py中定义了两个app,一个是polls,一个是admin,admin是Django封装的controller,用于系统用户管理,数据维护等
启动站点:
在浏览器中输入http://localhost:8008/polls浏览app polls的默认action index吧
这里的路由首先解析http://localhost:8008,找到firstPro/urls.py 读取路由配置信息,再解析 polls,到polls/urls.py中找到 配置信息:
由于path第一个参数是:'',我们在访问的时候,polls/后面什么也没跟,如果改成下面的配置
path('index/', views.index, name='index')
那么访问的Url也要变成 http://localhost:8008/polls/first/
Django App(一) StartApp的更多相关文章
- Python-Django 第一个Django app
第一个Django app by:授客 QQ:1033553122 测试环境: Python版本:python-3.4.0.amd64 下载地址:https://www.python.org/do ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第一部分(Page 6)
编写你的第一个 Django app,第一部分(Page 6)转载请注明链接地址 Django 2.0.1 官方文档翻译: Django 2.0.1.dev20171223092829 documen ...
- [python][django学习篇][2]创建django app
推荐学校django博客:http://pythonzh.cn/post/8/ django app 可以理解为一个文件夹: 里面包含了相关功能的代码.通过manage.py来创建 web app 激 ...
- Django APP打包重用
引言 有时候,我们需要将自己写的app分发(dist)给同事,分享给朋友,或者在互联网上发布,这都需要打包.分发我们的app. Django的子系统重用是基于app级别的.也就是一个项目可以包含多个互 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第七部分(Page 12)
编写你的第一个 Django app,第七部分(Page 12)转载请注明链接地址 本节教程承接第六部分(page 11)的教程.我们继续开发 web-poll应用,并专注于自定义django的自动生 ...
- Django 2.0.1 官方文档翻译:编写你的第一个 Django app,第六部分(Page 11)
编写你的第一个 Django app,第六部分(Page 11)转载请注明链接地址 本教程上接前面第五部分的教程.我们构建了一个经过测试的 web-poll应用,现在我们会添加一个样式表和一张图片. ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第五部分(Page 10)
编写你的第一个 Django app,第五部分(Page 10)转载请注明链接地址 我们继续建设我们的 Web-poll 应用,本节我们会为它创建一些自动测试. 介绍自动测试 什么是自动测试 测试是简 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第四部分(Page 9)
编写你的第一个 Django app,第四部分(Page 9)转载请注明链接地址 该教程上接前面的第三部分.我们会继续开发 web-poll 应用,并专注于简单的表单处理和简化代码. 写一个简单的表单 ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第二部分(Page 7)
编写你的第一个 Django app,第二部分(Page 7)转载请注明链接地址 本教程上接前面的教程.我们会配置数据,创建你的第一个 model,并对Django 自动生成的 admin 站点进行快 ...
随机推荐
- chattr 命令详解
chattr 作用: 改变文件属性,这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有一下8种模式 模式: a: 让文件或目录仅供附加用途 b: 不更新文件或目录的最后存取时间 ...
- rabbitmq 启动报错
=============================================== 2017/10/24_第1次修改 ccb_warlock = ...
- Qt数据库集成应用封装
平时的大大小小的项目中,基本上都需要与数据库打交道,会遇到各种各样的应用场景,本人主要遇到四种场景1:数据库自动重连,例如mysql数据库中经常遇到服务器挂掉的情况,需要自动检测并重新连接数据库.2: ...
- 4、公司经营的业务来源 - CEO之公司管理经验谈
公司经营的业务来源为公司的运作资金提供了帮助,一般来说,整个公司的领导层为公司的经营做管理,而业务员就为公司的业务提供来源,然后建设部为业务开展做建设. 一.总经理: 公司的总经理主要负责公司运作经营 ...
- 进程管理工具Supervisor(二)Events
supervisor可以当做一个简单的进程启动.重启.控制工具使用,也可以作为一个进程监控框架使用,作为后者,需要使用supervisor的Events机制. Event Listeners supe ...
- 删除链表中间节点和a/b处的节点
[题目]: 给定链表的头节点 head,实现删除链表的中间节点的函数. 例如: 步删除任何节点: 1->2,删除节点1: 1->2->3,删除节点2: 1->2->3-& ...
- 老版VC++线程池
在一般的设计中,当需要一个线程时,就创建一个,但是当线程过多时可能会影响系统的整体效率,这个性能的下降主要体现在:当线程过多时在线程间来回切换需要花费时间,而频繁的创建和销毁线程也需要花费额外的机器指 ...
- (GO_GTD_2)基于OpenCV和QT,建立Android图像处理程序
一.综述 如何采集图片?在windows环境下,我们可以使用dshow,在linux下,也有ffmpeg等基础类库,再不济,opencv自带的videocapture也是提供了基础的支撑.那么 ...
- 解决CentOS7安装Tomcat不能被外部访问的问题
在CentOS7安装了Tomcat,在服务器内部使用火狐浏览器通过localhost:8080是可以访问的,但是不能被外部访问,主要原因是因为防火墙的存在,导致端口不能被访问.CentOS是使用fir ...
- 牛客网linux试题-错误整理-20171013
创建对象时,对象的内存和指向对象的指针分别分配在:堆区,栈区 堆内存用来存放由new创建的对象和数组,在堆中产生了一个数组或对象后,还可以在栈中定义一个特殊的变量,让栈中这个变量的取值等于数组或对象在 ...