从零开始的Django论坛搭建(一)混沌中的独白+一切的开始

目录

 

混沌中的独白(前言)

一切的开始

环境准备

创建你的第一个Django项目

创建第一个APP


 

混沌中的独白(前言)

        本人是个编程菜鸟,但是比较享受创造的快感(虽然这么说又尬又怪),虽然接触到过很多种语言,却只钟情于Python,实在是因为它简单的语法逻辑以及强大的第三方支持。Python真的非常适合用来制作小玩具,而本次我们不在满足于小玩具的制作,我们希望制作一个可以拥有完善功能的网络社区,恰好有很多基于python的网络框架,我们这次就用最为便捷的Django吧。

       这里用了网络社区而非论坛一词,是因为我们希望这个平台中用户的交互更加丰富。在这个娱乐平台百花齐放的今天,每一个平台都各具特色,带着自己别具一格的文化风格,吸引着千万向往乐趣,向往交流,向往归宿的年轻人。不得不说,现在的网络社区比起现实中的社区更加活跃,每个用户在自己社区中的主页比他们上千元租的单身公寓更有温度。

        你可能创造过属于自己的博客,但现在想不想试一试创造一个属于自己的网络社区呢?本系列教程面向学习Python新手甚至是没有学习过编程的小白,在各个环节会尽可能讲的细一些,当然如果你是小白的话,一定会对其中的很多概念,操作存在疑问,欢迎你们在评论区问我,我也会在教程中把我参考过的书记,文章,教程等的链接给出,当然更希望大家可以拓展更多的教程外内容。如果大家对本教程有什么意见或建议欢迎指出,我会根据建议对教程进行修改和补充。


一切的开始

环境准备

编程语言:Python3.6.5,下载地址:https://www.python.org/downloads/,

现在Python已经不用去手动添加环境变量了,点开安装程序就全自动安装了,真的是太方便了。安装结束后win+R输入cmd按Enter,打开CMD,输入python会提示python版本,这就表明你安装成功了。

编辑器:你的程序得有一个地方写的嘛,我是使用了ATOM文本编辑器来写程序的,但是这个东西安装配置太麻烦,强烈不推荐新手使用,果然还是官方的pycharm比较好用哦。下载网址:http://www.jetbrains.com/pycharm/

更细致的安装教程:https://blog.csdn.net/ling_mochen/article/details/79314118

Django框架:这里我们使用python自带的下载管理工具pip下载并安装Django,这个超好用的,你只需要在CMD中输入pip install Django,pip就会自动为你安装适用于你的Python版本的Django。当然,你也可以在GitHub上下载Django的压缩包,解压并和Python安装目录放在同一个根目录,然后在CMD中输入 Python setup.py install 就可以进行安装了。

这里我将Django中文文档分享给大家,里面对于安装介绍的更详细,而且会对Django中的很多模块,功能,类都有详细的介绍,我们使用Django框架进行开发,一定少不了对其文档的阅读。文档地址:https://docs.djangoproject.com/zh-hans/2.1/

PS:讲道理这种网站的架设都会放在Linux服务器上的,所以可以直接放在Linux环境下开发,不过我们作为普通个人开发者就不搞那么麻烦了,我们直接在Windows下进行开发,反正到时候也能移过去。


创建你的第一个Django项目

安装Django后输入:py -m django --version 来查看你的Django是否成功安装,如果成功安装你会看到它的版本提示信息。

这时你就可以开始创建你的第一个Django项目了,打开命令行,cd 到一个你想放置你代码的目录,然后运行以下命令:

django-admin startproject projectname

projectname是你的项目名字,你可以随便给项目起一个好听的名字。我的项目叫CHDBBS,CHD是我母校的名字,其他学校都是XXU这种格式,我的母校还是挺有特点的。

输入完命令,你的目录中应该就有了名为projectname的文件夹了,这是Django为你自动创建的工程必要文件,来看看这里面都有什么吧!

CHDBBS/
    manage.py
    CHDBBS/
        __init__.py
        settings.py
        urls.py
        wsgi.py
  • manage.py 是Django工程管理工具,很强的,以后大有用处
  • settings.py 是工程全局设置的一个文件,你可以在里面完成项目的一些全局设置,比如注册APP(Django项目下可以建立多个应用也就是这里说的app),设置站点语言,时区,配置连接数据库,注册第三方工具等。
  • urls.py 是你的工程中的路由配置声明,就是连接你访问的URL和你的后端处理逻辑的地方,它将URL和逻辑处理函数绑定,你可以把它看做一个向导,他将每个班级的牌子贴在教室门口,然后将挂着班级名的小朋友领进教室。
  • wsgi.py 作为你的项目的运行在 WSGI 兼容的Web服务器上的入口。这个在项目开发完成等待部署时会用到,先不细说,阅读 Django文档的 如何使用 WSGI 进行部署 了解更多细节。 

这些文件的冲击力还是有点小,我们能否直接在浏览器中看到可视化项目呢?

那是当然,在CMD中 cd 到该项目目录(当然你现在应该就在这个目录下吧),输入 python manage.py runserver ,你会看到:

Performing system checks...

System check identified no issues (0 silenced).

You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.

七月 18, 2019 - 15:17:53
Django version 2.1, using settings 'CHDBBS.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

强大的 manage.py 已经让你的项目在你本地的8000端口运行起来了!

打开你的浏览器访问 http://127.0.0.1:8000 Surprise!火箭升空了哦!这是Django对你开启项目的庆祝。

我也送你一首Rocket为你庆祝吧!Rocket-红花会


创建第一个APP

现在你已经开启了自己的第一个项目,我们既然要做网络社区而非简单的论坛,我们肯定希望我们的社区有丰富的交互内容,不如我们把这些内容按大功能模块划分成几个小的应用(APP),然后逐一实现。

在项目目录下输入:py manage.py startapp appname

这里的appname就是你的应用名,我们就先把核心论坛模块实现吧,这里我的appname是Article。

这样又会生成一个新的目录了:

Article/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py
  • admin.py 是管理站点设置。Django自带一个管理站点,开发者在上面进行裁剪定制就可以开发出自己的后台管理页面,真的是太棒了!
  • apps.py 是本APP的注册信息。
  • migration 是迁移操作信息,这是Django特有的ORM中的一环,将模型类数据转换成sql语言,实现与数据库的通信。
  • models.py 就是模型类了,这个在系统设计时很重要哦!以后会单章详细说明。
  • tests.py 测试脚本放这边。
  • views.py 这里主要写后台处理逻辑。

好了,到这里我们先停一下。我们可以稍微了解下Django的工作流程。

我们可以看到在B/S模式(浏览器/服务器模式)中,用户通过浏览器对控件按钮进行点击,点击后由浏览器发送请求,请求经过层层封装后通过路由器几经辗转到达后台服务器,服务器对该请求进行解析,处理完成后将处理结果封装传回给用户。

而Django则负责了服务器对请求的解析过程,Django是一个基于Python语言的开源Web应用框架,采用类似MVC的MTV模式,由模型类model,视图模板类template,后台控制渲染类views,部分中间件,及自带的站点管理admin等组成。同时,是一个基于请求的CMS(内容管理系统)框架。

Django模型类Model处理与数据模型相关的所有内容,负责与数据库的交互,支持目前绝大多数数据库如mysql,redis,SQLserver等,Django自带的迁移命令可以直接将模型类转化为数据库表单,方便快捷。视图层View处理业务逻辑,并将处理后的数据返回一个规定渲染的模板。模板类Template存放所有web前端页面,在请求经过view视图处理后进行渲染,template中的模板可以使用简单的Python语言对页面与数据进行处理。在调试时,可以使用框架自带的manage.py的runserver命令启动服务器,并实时调试。Django可以部署运行在Apache,Nginx,WSGI等服务器上。

如下图:

从零开始的Django论坛搭建(一)混沌中的独白+一切的开始_第1张图片

你可能感兴趣的:(Django,Django,python,BBS,论坛,新手教程)