zoukankan      html  css  js  c++  java
  • Django学习之天气调查实例(1):工程的开始

            开始学习Django,一步一个脚印的进行。思考再三,还是以一个实例来开始学习。手里面正好有几万条单位天气传感器收集的数据,想做一个网页版的天气统计查询之类的小应用,也可以给学生体验,方便教学的进行(尽管教学目前不适用Python)。

           前面通过近1个月的努力,终于把部署的环境(基于ubuntu server+apache+mod-wsgi)弄清楚了,现在开发环境准备这样进行:

    •       开发环境:windows10 + python3.6 + Django1.11,IDE可以采用Pycharm;
    •       部署环境:Ubuntu16.04 + apache2.4 + Django1.11 + MySQL 。

    1.创建工程

        现在指定工程名称为:website

        通过命令:  

    django-admin.py startproject website
    

      创建成果后,进入文件夹  website,运行命令:

    python manage.py runserver

       

       若显示上图所示,则表示创建成功。

      成功运行后,需要设置数据库的连接,打开settings.py文件,在database部分连接mysql数据库

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',  # 或者使用 mysql.connector.django
            'NAME': 'website',
            'USER': '用户名',
            'PASSWORD': '密码',
            'HOST':'IP地址',
            'PORT':'3306',
        }
    }

    2.创建模型:

        由于Django的开发也是基于MVC的架构,所以数据模型是数据库与页面数据的中间实体。创建数据模型使用 startapp命令,如下:

    django-admin startapp webModel

      创建成功后会创建webModel的文件夹。进入该文件夹,打开models.py 文件,可以创建数据模型了。首先创建一个"Users"的数据模型,包含“username”和“password”两个字符字段,具体如下:

    class Users(models.Model):
        username=models.CharField(max_length=20)
        password=models.CharField(max_length=32)

      打开 settings.py文件,将“webModel”添加到里面如下:

    INSTALLED_APPS = (
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'TestModel',               # 添加此项
    )

      完成后,通过3条语句来实现数据实体反映倒是数据库,即在数据库创建数据表。

    python manage.py migrate   # 启动迁移
    
    python manage.py makemigrations webModel  # 让 Django 知道我们在我们的模型有一些变更
    python manage.py migrate webModel   # 迁移数据变化

      完成后观察数据库,发现数据表已经顺利创建完成

            若是第一次的模型添加时还缺少字段,如现在添加一个创建日期 createdt,model.py如下所示:

    class Users(models.Model):
        username=models.CharField(max_length=20)
        password=models.CharField(max_length=32)
        createdt=models.DateField("创建时间",default = timezone.now()) #新增

      新增字段后,需要重新迁移,才能更新到数据库,执行如下命令:

    python manage.py makemigrations webModel  # 让 Django 知道我们在我们的模型有一些变更
    python manage.py migrate webModel   # 迁移数据变化

      至此,数据模型创建完毕,以后需要什么模型时到时候再创建即可。

  • 相关阅读:
    sql函数
    sql日期
    Windows下串口编程
    Libreoffice/Office:禁止首字母自动大写功能
    convert:图片转pdf失败
    LibreOffice/Calc:单元格设置下拉菜单
    Ubuntu:查询计算机软硬件信息
    tar:文件打包归档
    中科大自主招生2018年笔试数学之五
    文件分割与合并
  • 原文地址:https://www.cnblogs.com/KKSoft/p/8029266.html
Copyright © 2011-2022 走看看