Python项目实战

使用pyCharm社区版新建Django项目

2019-03-26  本文已影响0人  阿姆斯小壮

基本环境:


步骤1:使用pyCharm新建项目

1. pyCharm新建项目示意图

步骤2:新建Django项目

命令django-admin startproject project_name

2-1. 使用命令行新建Django项目
2-2. Django项目的目录结构示意

步骤3:新建项目下的app

理论上这个时候如果使用指令python manage.py runserver 8000即可以成功启动Django内置服务器

注意:


步骤4:在项目下新建 templates 路径

注意*:
此目录下即用来存放我们的html文件;

 1. 打开项目中的 settings.py 文件
 2. 找到变量 TEMPLATES ,确认其键名为 DIRS 的键值是否为:[os.path.join(BASE_DIR, 'templates')]

步骤5:在项目下新建 static 路径

 1. 打开项目中的 settings.py 文件
 2. 末尾处新增变量 STATICFILES_DIRS 并赋值为:[os.path.join(BASE_DIR, 'static')]

步骤6:为MTV模型的各文件建立联系

6.1 首先理解下Django的MTV模型
Django中的MTV模型
我们以 http://127.0.0.1:8000/index 简单作下说明:
1.用户提交Request请求:把浏览器中url地址提交给Django服务器
2.Request首先到达的淡蓝色区域,你可以理解为Django项目中的 urls.py 文件,在此文件中会去根据你事先在 urlpatterns 列表中定义好的url路径去确定 index/ 指向哪个 Views文件,即你编写好的某个app目录下的 views.py 文件
3.views.py 文件中的函数render(request,'xxx.html',model_Var) 将会获取数据模型:Models模板网页:Templates,在三者的共同渲染下,给客户端返回 Response,呈现出完整网页。
6.2 具体方法
(1)在urls.py 文件中添加路径
from django.contrib import admin
from django.urls import path
from blog.views import index
urlpatterns = [
   path('admin/', admin.site.urls),
   path('index/', index),
] 
(2)在views.py 文件中构造render(request,templates,model)函数
from django.shortcuts import render
def index(request):
  return render(request, 'index.html')
(3)以上即可以最简单的构造一个访问,接下来的步骤将会说明如何使用models.py

步骤7:连接数据库并使用 models.py

7.1 在Django中连接MongoDB数据库

Django 模型是与数据库相关的,与数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL,MongoDB等数据库,只需要在settings.py中配置即可,不用更改models.py中的代码,丰富的API极大的方便了使用。
在 settings.py 中添加设置:

# 引入mongoengine 以连接MongoDB数据库
from mongoengine import connect
connect('website', host='127.0.0.1', port='27017')

使用的库为 mongoengine,其使用文档详见:http://docs.mongoengine.org/tutorial.html

7.2 在 models.py 中书写ORM数据模型
from mongoengine import *
# 引入mongoengine 以连接MongoDB数据库
from mongoengine import connect
connect('ganji', host='127.0.0.1', port=27017)
 #定义类
class Info(Document):
        cate_name = StringField()
        person = StringField()
        title = StringField()
        cate = StringField()
        post_time = StringField()
        datetime = StringField()
        position = StringField()
        phone = StringField()
        url = StringField()
        price = IntField()
        meta = {
                  'collection': 'info_list2'
              }
 #展示数据
  for i in Info.objects[:1]:
          print(i.cate_name)

说明
1.类的定义:可以理解为一个类就是数据库中文档(每一行数据)的模板,因此继承于Document
2.其中 meta 属性中,需要写明这个类的指向,即你要访问哪个collection中的数据
3.使用class.objects属性来完成对每个文档的遍历
4.class.objects支持切片操作


步骤8:在views.py中使用models.py 中的数据模型

from django.shortcuts import render
 # 从app模块导入blog中的model文件,使用其中的Info类
from blog.models import Info
def index(request):
     # 类的实例化操作
        info=Info.objects[:1]
         context = {
                'info': {
                             'title': info[0].cate_name,
                              'author': info[0].person,
                              'des': info[0].title,
                         }
          }
          return render(request, 'index.html', context)

步骤9:使用Django中的templates语法在网页中使用数据

以上就是新建一个Django项目的基本步骤啦~

更多Django学习请参考:https://docs.djangoproject.com/zh-hans/2.0/

上一篇下一篇

猜你喜欢

热点阅读