Django学习笔记

        最近学习完廖雪峰的Python3教程,做完博客实战后,准备学习一下Django。由于使用的Django是2.1版本的,网上找了很多教程,最后发现还是官方的文档最靠谱。按照教程完成了第一个投票应用后,写个博客记录下,一是巩固一下自己的理解,二也希望通过写博客能督促自己学习,有一个学习的劲头。

新建项目

首先安装Django,可以略过。创建Django项目,我用的编译器是Pycharm,新建项目比较方便,但由于我使用的是anaconda,所以要注意选择Python解释器。

当然,也可以打开命令行,cd 到一个你想放置你代码的目录,然后运行以下命令:

django-admin startproject mysite

其自动创建的目录为:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

最外层的:file:mysite/根目录只是你的项目的容器,Django不关心它的名字,可以将其重命名为任何你喜欢的名字,不过要避免使用Python或Django的内部保留名字。

manage.py:一个让你用各种方式管理Django项目的命令行工具。

里面一层的mysite/目录包含你的项目,是一个纯Python包。

__init__.py:告诉Python,这个目录是一个Python包。

setting.py:整个Django项目的配置文件,数据库连接、模板路径、时区设置等等。

urls.py:Django项目的URL声明,就像你的网站的“目录”。

wsgi.py:作为你的项目的运行在WSGI兼容的WEB服务器上的入口。

创建应用

终端下执行命令:

py manage.py startapp polls

将会在根目录下创建以下polls目录:

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

数据库及模型

Django使用SQLite作为默认数据库,如果你想使用基本不用修改配置文件。我用的是Mysql,首先需要自己创建一个数据库,这里注意要将编码集设为utf8,否则后期写入中文字符会失败。然后在setting.py中进行如下修改。

import pymysql              # 导入pymysql
pymysql.install_as_MySQLdb()

...

# 为了在我们的工程中包含我们创建的应用,需要添加在INSTALLED_APPS中
INSTALLED_APPS = [
    # 直接写polls也可以
    'polls.apps.PollsConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

...

# 数据库连接信息:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'db_mysite',
        'HOST':'127.0.0.1',
        'USER':'root',
        'PASSWORD':'password',
        'PORT':'3306',
    }
}

...
...

TIME_ZONE = 'Asia/Shanghai'   # 设置为当前时区

...

在models.py下创建模型,这里暂时我们只需要Question和Choice两个表。

from django.db import models

import datetime

from django.utils import timezone


class Question(models.Model):
    question_text = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date publishe
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值