3.Django基本命令

上节我们已经安装好了Django,本节我们就新建一个小项目来感受一下。

1.需求描述

我们做一个新闻网站。 项目名称:九说新闻(NineNews) 功能描述:
1.新闻列表
2.新闻详情
3.发布新闻
4.用户注册/登录
5.用户评论
(一些功能本节不涉及)

2.创建项目

打开终端/命令行。

#django-admin startproject 项目名称
 django-admin startproject NineNews

项目名称需要是合法的标识符。
如果没有信息输出说明项目创建成功。

3.项目结构

第二步创建的是整个项目,是一个骨架,结构如下:

|-NineNews
|-manage.py
|-NineNews
    |-__init.py__
    |-setting.py
    |-urls.py
    |-wsgi.py

4.新建APP

进入到项目目录下面

cd NineNews

# python manage.py startapp app名称
python3 manage.py startapp news

如果没有任何信息输出,说明创建成功。
此时项目结构:

|-NineNews
|-manage.py
|-NineNews
    |-__init.py__
    |-setting.py
    |-urls.py
    |-wsgi.py
|-news
    |-__init.py__
    |-admin.py
    |-apps.py
    |-migrations
        |-__init.py__
    |-models.py
    |-views.py

到此基本项目搭建已经完成。
复习一下两个命令:

  • 创建项目django-admin startproject NineNews
  • 创建app python3 manage.py startapp news

5.启动项目

准备工作完成,是不是很想看看效果呢? 启动服务:

#项目根目录,终端里面输入
python3 manage.py runserver

正常情况下,将会看到:

April 11, 2019 - 13:48:43
Django version 2.1.7, using settings 'NineNews.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

到此项目已经启动成功。可以在浏览器输入http://127.0.0.1:8000查看效果。 但是此时啥也没有(也可能出错),不要惊慌,因为我们的app里面什么也没写。
如果启动,看到下面的信息:

Error: That port is already in use.

意思是8000端口被占用了,我们需要换个端口。

# 换成8888
#0:8888的0表示的就是loaclhost(127.0.0.1或0.0.0.0),是一种缩写
python manage.py runserver 0:8888

6.第一个视图

上面我们已经启动项目,但是什么也没有,是不是很难受。接下来我我们就写点东西。
打开news文件夹下的views.py。

from django.http import HttpResponse
# Create your views here.

def index(request):
    return HttpResponse('hello https://litets.com')

再打开NineNews目录下的urls.py

# 添加
from news.views import index

urlpatterns = [
    path('admin/', admin.site.urls),
    path('index/', index) # 新增
]

然后ctrl+c关闭原来的服务器。从新开启:

python3 manage.py runserver 0:8888
#再浏览器输入
#http://127.0.0.1:8888/index/

我们将看到:

hello https://litets.com

好了,第一个Django项目就写完了,是不是很简单呢。

6.小结

本节是小试牛刀。主要记住3个命令就可以了。

  • 创建项目django-admin startproject NineNews
  • 创建app python3 manage.py startapp news
  • 启动python3 manage.py runserver 0:8888

7.下一节

4.Django视图

声明:原创文章,版权所有,转载请注明出处,https://litets.com。