Django-项目初始化搭建

1、创建指定的虚拟化环境

  mkvirtualnev django_py3_1.11 -p python3

2、安装Django

  pip install django==1.11.11

3、Django 工程的创建

  # cd ~Desktop/code
  django-admin startproject 工程名称
  django-admin startproject demo

4、Django 工程的运行

  # 运行开发服务器
  python manage.py runserver ip:端口

5、打开pycharm,配置运行环境为虚拟机上的环境

  settings/Project:demo/Project Interpreter

6、Django中创建子应用的模块

  # cd ~Desktop/code/demo
  python manage.py startapp 子应用名称

7、为Django框架添加对应的user应用

  # 打开对应的users/app.py文件
  在文件中添加编写指定的UserConfig 配置
  class UsersConfig(AppConfig):
      name = "users"
  # 将配置类添加到指定的INSTALLED_APPS中
  INSTALLED_APP = [
      'users.apps.UsersConfig' # 注册安装应用
  ]

8、Django工程中应用对应视图的创建

  from django.http import HttpResponse
  
  def index(request):
      return HttpResponse("hello the world!")
  # 视图创建完成后,配置对应的url 引导请求的用户进入到客户端中
  from django.conf.urls import url
  
  from . import views
  
  urlpatterns = [
      url(r"^index/$", views.index)
  ]
  # 编写程序主入口,引导请求到对应的user应用中
  from django.conf.urls import url, include
  from django.contrib import admin
  
  urlpatterns = [
      url(r"^users/", include("users.urls"))
  ]
  # 启动django应用程序,验证结果
  python manage.py runserver ip:端口

9、Django 应用程序配置文件说明

9-1、BASE_DIR :用于设置django项目工程的根目录
  BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  
  # os.path.abspath(__file__) :获取当前settings.py文件的路径
  # os.path.dirname():找到指定文件路径的上一级目录
9-2、开启DEBUG的配置模式,默认为False
  DEBUG = True
  ALLOWED_HOSTS = ['*'] 配置那些ip地址可以访问当前项目,配置*代表所有人可以访问
9-3、本地语言与时区配置
  LANGUAGE_CODE = 'zh-hans'

  TIME_ZONE = 'Asia/Shanghai'

10、Django 对应静态文件的使用

  # 在项目工程目录下创建静态文件存放的文件夹,static_file
  # 在settings.py文件中进行对应static 静态文件的配置
  STATIC_URL = '/static/' # 可以通过使用网址/static/文件在static_files中的路径来访问
  STATICFILES_DIRS = [
      os.path.join(BASE_DIR, 'static_files') # 设置静态文件存放的目录
  ]

11、Django 路由命名与reverse 反推

11-1、使用include函数定义路由时,可以使用namespace 参数
urlpatterns = [
    url(r'^users/', include('users.urls', namespace='users')),
]
urlpatterns = [
    # url(路径, 视图),
    url(r'^say', views.say, name='say'),
]
def say(request):
    url = reverse("users : index")
    return HttpResponse("say page")

12、Django 通过URL提取参数

12-1、未命名参数
url(r'^weather/([a-z]+/(\d{4}))/$', views.weather)

#  ----

def weather(request, city, year):
    print city
    print year
    return HttpResponse('OK')
12-2、命名参数
url(r'^weather/(?P<city>[a-z]+/(?P<year>\d{4}))/$', views.weather)

#  ----

def weather(request, city, year):
    print city
    print year
    return HttpResponse('OK')

posted on 2025-02-07 18:44  cloud_wh  阅读(42)  评论(0)    收藏  举报

导航