添加一个Django App

添加一个Django App

在新建完Django项目之后,就需要添加自己的功能模块了。

Django使用app的概念来组织不同的功能。实际上就是一堆符合Django要求的python模块。

使用命令

python manage.py startapp myfirstapp
添加一个Django App

可以看到Django的manage.py会自动帮我们建立一个myfirstapp的模块。

首先是apps.py

是Django的app定义文件,Django应用加载需要用到这个文件。

添加一个Django App

第二个是models.py

是Django的模型定义文件,Django使用自己的ORM库来实现python类到数据库的映射。这边的类就用来实现对象和表格的映射关系。默认是空的,Django可不知道你需要哪些数据。但是留下了这个接口,他会从这个文件加载模型。

第三个是tests.py

添加一个Django App

当今软件的复杂性导致对测试的重视,每个模块都该拥有自己的测试。这个文件就为你留下了写测试代码的地方。

然后是views.py

添加一个Django App

这个文件是用来写页面请求响应的。一个view实现HTTP请求到HTTP响应的转换。作为一个Web framework这是基本的需求。

我们就在这边写上我们的一个view,返回一个Hello页面。

添加一个Django App

View有了,接着缺少的就是这个view到url的映射关系。

新建myfirstapp/urls.py,加上映射关系。

添加一个Django App

这个url的映射关系只是作用于myfirstapp这个应用,而这个Django的Web服务的入口点,则是在之前新建项目目录下。我们要把新建的urls.py包含到项目目录下的url映射中去。我的项目名是mysite,所以需要更新mysite/urls.py。

添加

path('myfirstapp', include('myfirstapp.urls'))

到urlpatterns变量中。

第一个myfirstapp指的是url中的一段前缀,后面include函数里面则是对应应用里面urls.py的模块名,注意这边使用的是字符串。不用把对应的模块import进来。还有就是import里面默认没有import include函数,需要把include函数import进来。

添加一个Django App

这样就完成了一个小的应用。

运行

python manage.py runserver 8000

启动web服务。

通过浏览器访问就能访问刚才定义的那个view。

添加一个Django App


分享到:


相關文章: