开篇
学Python也有一段时间了,总想做点东西,是时候慢慢的做点东西了,看了许多资料和博客,也决定自己慢慢的亲手搞一个,之前学的时候总觉得先记下来有空一起总结,发现效果并不好,今天索性新建一个项目,从头开始边做边对最近的学习总结一下吧。
准备
python版本:3.5.2
编辑器:PyCharm
Django版本:1.8.2
PyCharm的获取和配置如果有需要可以看我的上一篇文章:
Python PyCharm编辑器配置和使用
创建工程和APP
打开PyCharm创建一个项目如下图
创建之后的目录结构如下
Blog 项目的容器
wsgi.py
python服务器网关借口 python应用与web服务器之间的接口
urls.py
url配置文件 django项目中都需要我们自己去配置他们的地址来链接
setting.py
项目的总配置文件 包含了 数据库 web 以及其他的一些配置
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
项目的根目录
SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx$95jg0m@'
创建项目生成的安全码
DEBUG = True
用于调试 但是在实际项目中 不要打开
ALLOWED_HOSTS = [] 只允许 在这里添加的 网址 去访问页面
TEMPLATES模板的配置
STATIC_URL = '/static/' 静态文件地址
DATABASES 设置数据
创建应用 article 加入到 setting.py INSTALLED_APPS中
创建新的APP
在我们输入执行
python manage.py startapp article
命令之后,可以看到PyCharm目录中增加了相关文件如下图
上图中
article文件下 文件介绍
migrations 数据移植模块 内容自动生成
admin.py 该应用的后台配置文件
apps.py 应用的一些配置 django 1.9以后自动生成的
models.py 数据模块 使用ORM框架 类似于mvc的 model模块
tests.py 自动化测试模块
view.py 执行响应的逻辑代码模块 项目中主要的代码编辑区
现在我们需要在setting.py中添加新建APP,然后运行项目如下图
python manage.py runserver #启动Django中的开发服务器
另外我们也可以自己设置端口号
runserver 8002 # 后面加端口号用以改变端口
# 当提示端口被占用的时候,可以用其它端口:
python manage.py runserver 8001
python manage.py runserver 9999
把左侧命令行中的网址放到浏览器中看到他已经运行了
其实我们创建项目与APP的命令都可以在命令行中
django-admin.py startprojec tXXXX #创建项目
python manage.py startapp XXXX #创建app
python manage.py runserver #启动Django中的开发服务器
我们依据工程中的 manage.py来创建APP等一系列的操作,那么我看一下 manage.py还有那些其他作用
在终端中输入可以看到他的其他命令
python manage.py
创建数据库
在models.py中设置相应的数据库字段
python manage.py makemigrations
python manage.py migrate #命令行运行该命令
运行结果如下:
然后我们打开数据库,可以看到我们新增加的Article表已经存在如下图
在软件中我们可以对数据库进行一系列的操作,下面我们加一些数据,然后到后台去查看他们
随便增加一些数据
网站的后台
作为一个网站我们需要登录后就可以从后台上传我们想要的内容,而不是每次操作数据库,Django具有很强大的后台,只需要简单的处理我们就可以使用它,然后可以从后台查看我们刚刚手动加入到数据库中的内容
在创建项目的时候已经默认设置好了连接后台的配置,但是我满要把我们的数据库与它关联起来,不然虽然进入后台但是并不会显示我们的数据
article/admin.py中设置如下
#导入models
from article.models import Article
# Register your models here.
admin.site.register(Article)
接下来我们只需要创建一个超级用户并执行打开后台的命令就可以了
python manage.py createsuperuser
如下图 输入账号,邮箱和密码(用户名 不能和邮箱一样 密码不要太简单 不允许)
然后运行后台服务器
python manage.py runserver
在地址栏输入:http://127.0.0.1:8000/admin
进入后台可以看到我们创建的内容
点入我们创建的Article可以看到我们之前手动添加的文章信息
可以看到还是有许多bug的,不要急一步步来,首先后台时英文的,这个节奏不对啊,先改成中文的嘿嘿。
setting.py中
LANGUAGE_CODE = 'en-us' 默认英文
改为汉语 LANGUAGE_CODE = 'zh_Hans'
在新版本的django 之中 值保留了'zh_Hans' 和'zh_Hant'繁体字
然后刷新页面可以看到改变后的页面。
是不是顺眼多了呢,哈哈。
当然如果我们想要美化后台界面的话我们可以引入bootstrap使用框架来美化后台的显示效果。
django-admin-bootstrap
利用pip安装
pip install bootstrap-admin
然后在setting.py中修改INSTALLED_APPS中加入'bootstrap_admin'
然后运行后台服务器并刷新界面
呃呃,貌似更丑了,第一遍先显示出来吧,大体逻辑先搞完再说,留个坑在这。
目前为止这里有几个待优化先说一下,先记录一下,一个是样式的优化,后台上传文章,现在是文本形式的,我们可以通过第三方库修改他的样式改成类似于word或者markdown形式的。
这里先优化一下显示后台文章对应的名字
在models.py中 如果是python3写法如下
def __str__(self):
return self.title
修改后的显示效果
后记
今天的内容主要是创建项目和创建相关的数据库,并修改其中的内容,然后在后台进行数据显示,并修改后台显示的效果,下篇文章主要该写一下前端页面的显示和交互逻辑了,然而还并不熟悉,还有比较头疼的html写法,是时候出去找一波网上的写好的前端模板了学习学习了,照着学习一遍对html学习也大有好处,哈哈,加油!今天就到这吧,五一劳动节,结束,明天去公司要赶项目了。。。