Django创建app

一个新建立的项目结构大概如下

mysite/

manage.py

mysite/

init .py

settings.py

urls.py

asgi.py

wsgi.py

各文件和目录解释:

  • 外层的mysite/目录与Django无关,只是项目容器,可以任意重命名.
  • manage.py:一个命令行工具,管理Django的交互脚本。
  • 内层的mysite/目录是真正的项目文件包裹目录,它的名字是引用内部文件的Python包名,例如:mysite.urls。
  • mysite/__init__.py:一个定义包的空文件。
  • mysite/settings.py:项目的配置文件。
  • mysite/urls.py:路由文件,所有的任务都是从这里开始分配,相当于Django驱动站点的目录。
  • mysite/wsgi.py:一个基于WSGI的web服务器进入点,提供底层的网络通信功能,通常不用关心。
  • mysite/asgi.py:一个基于ASGI的web服务器进入点,提供异步的网络通信功能,通常不用关心。

启动开发服务器

回到mysite项目的根目录,也就是manage.py文件的同级目录下,输入下面的命令:

python manage.py runserver

Django提供了一个用于开发的web服务器,使你无需配置一个类似Ngnix的生产服务器,就能让站点运行起来。这是一个由Python编写的轻量级服务器,简易并且不安全,因此不要将它用于生产环境。

Django的开发服务器(以后简称服务器)默认运行在内部的8000端口,如果你想指定端口,请在命令中显示给出:

python manage.py runserver 8080

如果想修改服务器的ip地址,请按下面的方式运行命令,比如:

python manage.py runserver 0:8000

0 是 0.0.0.0 的简写,Django将运行在0.0.0.0:8000上,整个局域网内都将可以访问站点,而不只是是本机(这其中可能还需要做一些配置和网络测试)。

注意: Django的开发服务器具有自动重载功能,当你的Python代码有修改,服务器会在一个周期后自动更新。但是,有一些动作,比如增加文件,不会触发服务器重载,这时就需要你自己手动重启。所以建议,在任何修改代码的操作后,手动重启开发服务器,确保修改被应用。

PS: 重启服务器的操作在Pycharm里只需要简单地点击重启按钮即可。

创建应用

在 Django 中,每一个应用(app)都是一个 Python 包,并且遵循着相同的约定。Django 自带一个工具,可以帮你生成应用的基础目录结构。

app应用与project项目的区别:

  • 一个app实现某个具体功能,比如博客、公共档案数据库或者简单的投票系统;
  • 一个project是配置文件和多个app的集合,这些app组合成整个站点;
  • 一个project可以包含多个app
  • 一个app可以属于多个project

app的存放位置可以是任何地点,但是通常都将它们放在与manage.py脚本同级的目录下,这样方便导入文件。

进入mysite项目根目录,确保与manage.py文件处于同一级,输入下述命令:

python manage.py startapp polls

相关推荐
熊猫钓鱼>_>15 小时前
Django全栈开发:架构解析与性能优化实战
性能优化·架构·django
小石潭记丶1 天前
Django服务开发镜像构建
django·sqlite·pip
华子w9089258591 天前
基于 Python Django 和 Spark 的电力能耗数据分析系统设计与实现7000字论文实现
python·spark·django
博观而约取2 天前
Django 数据迁移全解析:makemigrations & migrate 常见错误与解决方案
后端·python·django
哈里谢顿2 天前
Django REST Framework 中序列化器的Meta详解
django
博观而约取3 天前
Django ORM 1. 创建模型(Model)
数据库·python·django
小王子10243 天前
Django+DRF 实战:从异常捕获到自定义错误信息
后端·django·web开发
ઈ一笑ഒ3 天前
Django
django
伊织code3 天前
Wagtail - Django 内容管理系统
后端·python·django·wagtail