django 创建应用

来源:互联网 发布:淘宝美工需要注意什么 编辑:程序博客网 时间:2024/05/18 23:26

0x00前言

   现在,我们的开发环境 —— 一个“项目” —— 已经建立起来,我们将开始在上面做一些东西。我们编写的每个Django应用都是遵循特定约定且包含一个Python包。 Django自带一个工具,它可以自动生成应用的基本目录结构,这样你就能专心于书写代码而不是创建目录。
项目 vs. 应用
      项目和应用之间有什么不同? 应用是一个Web应用程序,它完成具体的事项 —— 比如一个博客系统、一个存储公共档案的数据库或者一个简单的投票应用。 项目是一个特定网站中相关配置和应用的集合。一个项目可以包含多个应用。一个应用可以运用到多个项目中。
     我们的应用可以放在Python path上的任何位置。在本教程中,我们将在manage.py文件同级目录创建我们的投票应用,以便可以将它作为顶层模块导入,而不是mysite的子模块。

0x01 创建应用

确保我们在与manage.py相同的目录下,并且键入以下命令来创建我们的应用: 

C:\Python35\rainmap-lite
$ python manage.py startapp nmaper

这将创建一个目录nmaper,它的结构如下:
nmaper/

admin.py     
apps.py      
migrations   #此处为文件夹
models.py    
tests.py     
views.py     
__init__.py  

0x02 激活模型

Django 应用是可以“热插拔”的,即可以在多个项目中使用同一个应用,也可以分发这些应用, 因为它们不需要与某个特定的Django安装绑定。
再次编辑scandere/settings.py文件,并修改INSTALLED_APPS设置以包含字符串'nmaper'。所以它现在是这样的:
scandere/settings.py
INSTALLED_APPS = (
    'nmaper.apps.NmaperConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
)
现在Django知道要包含nmaper应用。 让我们运行另外一个命令:
$ python manage.py makemigrations nmaper
你应该看到类似下面的内容:
Migrations for 'nmaper:

请记住实现模型变更的三个步骤:

  • 修改模型(在models.py文件中)。
  • 运行python manage.py makemigrations ,为这些修改创建迁移文件
  • 运行python manage.py migrate ,将这些改变更新到数据库中。

将生成和应用迁移文件的命令分成几个命令来执行,是因为可能需要将迁移文件提交到你的版本控制系统中并跟随你的应用一起变化; 这样做不仅可以使开发变得更加简单,而且对其他开发者以及上线生产非常有用。

阅读django-admin 的文档来了解manage.py 工具能做的所有事情。


欢迎大家分享更好的思路,热切期待^^_^^ !

0 0
原创粉丝点击