Django开发笔记(一)

标签(空格分隔): Django Python


1. 创建并运行Django项目

  1. 创建开发环境 安装Django

    pip install django==version
  2. 执行创建工程的命令

    django-admin startproject projectname
  3. 修改 settings.py 文件里的配置数据库以及其他一些配置

  4. 执行数据库迁移命令

    python manage.py makemigrations
    python manage migrate
  5. 执行运行项目的命令

    python manage run server

2. 配置MySQL数据库

settings.py 文件中有一项默认配置,默认是sqllite3数据库,不需要配置用户名和密码,在此配置下执行数据库迁移命令时会在项目的根目录下出现一个名为db.sqlite3的文件,该文件就是sqlite的数据库文件。

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}

现在将项目的数据库设置为MySQL,由于Django默认的是使用MySQLdb,而该哭目前还不支持python3,所以为了后期的版本升级我们采用pymysql来代替。

安装pymysql

pip install pymysql

修改与__init__py文件

import pymysql

pymysql.install_as_MySQLdb()

settings.py中进行MySQL配置

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'databasename', # 数据库名
'USER': 'root', # 用户名
'PASSWORD': '1234', # 密码
'HOST': '127.0.0.1', # 主机地址
'PORT': '3306', # 端口号
}
}

3. 设置模板目录

Django是 MTV 框架:M => Model,T => Templates,V => View。

在这里我们需要设置Django查找模板的路径。

一般我们都是在项目的根目录下创建一个名为templates的文件夹,里面放的就是模板文件。

然后我们需要告诉项目,在settings.py中配置。

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
# 下面这句就是配置模板路径
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
# 配置上下文media的处理器
'django.core.context_processors.media'
],
},
},
]

4. 配置静态资源文件路径

模板需要引用许多静态文件,如css、js、图片、字体等等。同样在项目根目录创建一个名为static的文件夹,将这些静态文件放在该文件夹下。

settings.py中配置

  1. 在开发模式下

    • 配置
    DEBUG = True
    ALLOWED_HOSTS = []
    STATIC_URL = '/static/'
    # 自定义静态资源路径 debug为true时才有效
    STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
    )
    • 使用

      在模板中使用
    {% load staticfiles %}
    <img src="{% static "my_app/myexample.jpg" %}" alt="My image"/>
  2. 在生产模式下

    • 配置
    DEBUG = False
    ALLOWED_HOSTS = ['*']
    STATIC_URL = '/static/'
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')
    • 使用

      在模板中使用,再配合Nginx来处理 /static 的请求
    {% load staticfiles %}
    <img src="{% static "my_app/myexample.jpg" %}" alt="My image"/>

最新文章

  1. HBase的Write Ahead Log (WAL) —— API与基本概念
  2. CSS hack前传——背景图片全屏
  3. System V IPC(1)-消息队列
  4. AI(Adobe Illustrator)简单入门——米老鼠
  5. 联合主键用Hibernate注解映射的三种方式
  6. Fragment开发计划
  7. ArrayList/Vector的原理、线程安全和迭代Fail-Fast
  8. 【Javascript Demo】移动端访问PC端网页时跳转到对应的移动端网页
  9. StretchDIBits函数
  10. ios7隐藏系统底部导航
  11. c++ 容器(list学习总结)
  12. 完美完全卸载Oracle 11g数据库
  13. NTOPNG修改密码
  14. Nginx与Tomcat安装、配置与优化
  15. [Codeforces Round #431]简要题解
  16. Windows 内存管理
  17. poj3468 A Simple Problem with Integers(线段树/树状数组)
  18. 微信小程序——星星评分
  19. Javascript异步执行时要小心的变量作用域
  20. 进化的Spark, 从DataFrame说起

热门文章

  1. C++学习知识点
  2. Java程序读取Properties文件
  3. js Date对象总结
  4. LVS专题-(1)LVS基本介绍
  5. ajax传递数组到后台,js传递数组到后台
  6. es6学习笔记8--Map数据结构
  7. 解析js中( ( ) { } ( ) )的含义
  8. 用canvas画弧形进度条
  9. ASP.NET MVC验证码演示(Ver2)
  10. HTML 【表单】