zoukankan      html  css  js  c++  java
  • python web编程之django

    今天学习了python网络编程框架django,感觉还是比较符合逻辑与展示分离的思想的,至于是不是mvc就不细究了,只需要知道在这里称之为MTV(model,Template,View)就行了

    首先一步是下载与安装,我的python是3.6的,选用的django是1.8的,虽然截至我写下这些句子的时候已经有了2.0版本,但是传说中的那种python setup.py install 的方式在这儿居然行不通了,因为少了个module,没辙儿,就装了1.8咯,反正下载后解压缩到指定文件夹后使用python setup.py install 是毫无问题的,并且将python目录下的Scripts添加到环境变量后运行django-admin startproject 和django-admin startapp 是正常的,后面的什么路由,模板也都是阔以的,下面重点说下models部分

    django默认的使用sqlite数据库,settings.py的配置如下(差不多个意思,配置的形式最重要):

      “DATABASE”:{

        "ENGINE":"django.db.backends.sqlite",#指定使用的数据库引擎包,类似与java中的数据库驱动java-mysql-connector的东西

        “NAME”:os.path.join(BASE_DIR,"db.sqlite3") #由于sqlite是文件数据库,这里指定了数据库的绝对路径,BASE_DIR在项目创建时就在settings.py中了

      }

    接下来就是模型部分了,创建模型后再数据库中的名称是应用名加模型名,例如你有一个应用名为demo,一个模型叫Person,则创建的数据表就是demo_person表了

    from django.db import models;

    class Person(models.Model):

      username=models.CharField(max_length=20);

      password=models.CharField(max_length=20);

    这里一个简单的模型就创建好了,要在数据库中形成数据表还需要以下步骤:

    python manage.py makemigrations

    python manage.py migrate;

    至此就成功的在db.sqlite中创建了一个名为demo_person的表了;

    django支持好几种类型的数据库,出sqlite外,还尝试了mysql,大致路径与上述一致,配置如下:

    “DATABASE“:{

      "ENGINE":"django.db.backends,mysql",

      "NAME":"db”,#这里需要指定数据库的名称

      “USER”:"root",#数据库服务器的用户名

      “PASSWORD":"huang",#对应用户的密码

      ”HOST":"localhost",#服务器主机的名称,我这儿就设定为本机了

      “PORT":3306" #我没有改过端口,故还是默认的3306段端口

    }

    网络上不少的介绍说到要安装mysqldb这个包,但是安装这个包的前提是大伙使用的python版本是2.x的,3.x版本的已经不支持这个包了,取而代之的是名为pymysql的包,所以这里需要换成pymysql这个东东,只需要在项目的__init__.py中添加以下:

    import pymysql;

    pymysqi.install_as_MySqldb();

    然后运行就可以了,以上留作我个人学习的记录,晚安!

  • 相关阅读:
    自动清除firefox缓存
    2013年02月24日
    java Class类
    Learning by doing——获黄色领骑衫之感
    2017《面向对象程序设计》课程作业八
    2017《面向对象程序设计》课程作业七
    2017《面向对象程序设计》课程作业六
    2017《面向对象程序设计》课程作业五
    2017《面向对象程序设计》课程作业四
    2017《面向对象程序设计》课程作业三
  • 原文地址:https://www.cnblogs.com/hwang126/p/8424860.html
Copyright © 2011-2022 走看看