####开篇 学Python也有一段时间了,总想做点东西,是时候慢慢的做点东西了,看了许多资料和博客,也决定自己慢慢的亲手搞一个,之前学的时候总觉得先记下来有空一起总结,发现效果并不好,今天索性新建一个项目,从头开始边做边对最近的学习总结一下吧。 ####准备 python版本:3.5.2 编辑器: Django版本:1.8.2 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 8001python 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 makemigrationspython manage.py migrate #命令行运行该命令复制代码
运行结果如下:
然后我们打开数据库,可以看到我们新增加的Article表已经存在如下图 在软件中我们可以对数据库进行一系列的操作,下面我们加一些数据,然后到后台去查看他们 随便增加一些数据 #####网站的后台 作为一个网站我们需要登录后就可以从后台上传我们想要的内容,而不是每次操作数据库,Django具有很强大的后台,只需要简单的处理我们就可以使用它,然后可以从后台查看我们刚刚手动加入到数据库中的内容 在创建项目的时候已经默认设置好了连接后台的配置,但是我满要把我们的数据库与它关联起来,不然虽然进入后台但是并不会显示我们的数据 article/admin.py中设置如下#导入modelsfrom 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使用框架来美化后台的显示效果。 利用pip安装pip install bootstrap-admin复制代码
然后在setting.py中修改INSTALLED_APPS中加入'bootstrap_admin' 然后运行后台服务器并刷新界面
呃呃,貌似更丑了,第一遍先显示出来吧,大体逻辑先搞完再说,留个坑在这。 目前为止这里有几个待优化先说一下,先记录一下,一个是样式的优化,后台上传文章,现在是文本形式的,我们可以通过第三方库修改他的样式改成类似于word或者markdown形式的。 这里先优化一下显示后台文章对应的名字 在models.py中 如果是python3写法如下def __str__(self): return self.title复制代码
修改后的显示效果
####后记 今天的内容主要是创建项目和创建相关的数据库,并修改其中的内容,然后在后台进行数据显示,并修改后台显示的效果,下篇文章主要该写一下前端页面的显示和交互逻辑了,然而还并不熟悉,还有比较头疼的html写法,是时候出去找一波网上的写好的前端模板了学习学习了,照着学习一遍对html学习也大有好处,哈哈,加油!今天就到这吧,五一劳动节,结束,明天去公司要赶项目了。。。