三、Django基础之模型

一、创建一个项目

如果这是你第一次使用Django,那么你必须进行一些初始设置。也就是通过自动生成代码来建立一个Django项目Project-一个Django项目的设置集,包含了数据库配置,Django详细选项设置和应用特性配置。

在命令行中,使用cd命令进入你想存储代码所在的目录,然后运行一下命令:

> django-admin.py startproject mysite

这将在当前目录创建一个mysite目录。如果失败了,请查看Problems running django-admin.py.

你需要避免使用python保留字或Django组件名作为项目的名称。尤其是你应该避免使用的命名如:django (与 Django 本身会冲突) 或者 test (与 Python 内置的包名会冲突).

这段代码应该放在哪里?

如果你有一般 PHP 的编程背景(未使用流行的框架),可能会将你的代码放在 Web 服务器的文档根目录下(例如:/var/www)。而在 Django 中,你不必这么做。将任何 Python 代码放在你的 Web 服务器文档根目录不会是一个好主意,因为这可能会增加人们通过 Web 方式查看到你的代码的风险。这不利于安全。

当你的代码放在你的文档根目录,以外的某些目录,列如/home/mycode.

让我们来看看startproject 都创建了些什么:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

文件解释:

  • 外层mysite/目录只是你项目的一个容器。对于Django来说该目录并不重要;你可以重命名为你喜欢的。
  • manage.py:一个实用的命令行工具,可让你以各种方式与该Django项目进行交互。你可以在django-admin.py and manage.py中查看关于manage.py所有的细节。
  • 内层mysite/目录事你项目中的实际Python包。该目录就是Python包名,通过它你可以导入它里面的任何东西。(e.g.import.mysite.settings).
  • mysite/init.py: 一个空文件,告诉Python该目录是一个Python包。
  • mysite/settings.py: 该Django项目设置/配置;
  • mysite/urls.py: 该Django项目的URL声明;一份由Django驱动网站目录
  • mysite/wsgi.py: 一个WSGI兼容的Web服务器的入口,以便运行你的项目;

二、开发用服务器

让我们来验证是否工作,从外层mysite目录切换进去,利用python manage.py runserver运行;

➜  mysite python3.6 manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).

July 01, 2018 - 02:45:18
Django version 1.11.11, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

你已经启动了Django开发服务器,一个纯粹的由Python编写的轻量级Web服务器。我们在Django内包含了这个服务器,这样你就可以迅速开发了,在产品投入使用之前不必去配置一台生产环境下的服务器-列如Apache,Nginx。
注意:不要在任何类似生产环境中使用此服务器。它仅适用于开发环境。(我们提供的是Web框架的业务,而不是Web服务器。)

现在服务器正在运行中,请在你的web浏览器中访问http://127.0.0.1:8000/。你会看到一个令人愉悦的,柔和的淡蓝色 “Welcome to Django” 页面。它工作正常!

更改端口号

默认情况下,runserver 命令启动的开发服务器只监听本地 IP 的 8000 端口。

如果你想改变服务器的端口,把它作为一个命令行参数传递即可。例如以下命令启动的服务器将监听 8080 端口:

> python manage.py runserver 8080

# 如果你想改变服务器 IP ,把它和端口号一起传递即可。因此,要监听所有公共 IP 地址(如果你想在其他电脑上炫耀你的工作),请使用:

python manage.py runserver 0.0.0.0:8000

猜你喜欢

转载自www.cnblogs.com/baishuchao/p/9249605.html
今日推荐