zoukankan      html  css  js  c++  java
  • python27+django创建app

    python manage.py startapp polls创建一个叫polls的app

    编辑文件 polls/models.py :

    1	from django.db import models
    2	class Poll(models.Model):
    3	  question = models.CharField(max_length=200)
    4	  pub_date = models.DateTimeField('date published')

    再次编辑文件 settings.py ,修改设置INSTALLED_APPS包含字符串 'polls' 。修改后的配置如下:

    INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'polls'
    )


    现在Django知道要去包含 polls 这个应用了。

    在 Django 中,有一个记录了项目中所有 model 元数据的表,就是 ContentType。表中一条记录便对应着一个存在的model ,那么我们只要通过一个元数据表的 id 和一个具体数据表中的 id,便可以找到任何model中的任何记录。该模块包含在django默认模块中

    django1.9以后,使用migrate代替syscdb

    运行python manage.py migrate来为数据库中每个应用建立一个数据库表。 

    起初一直报错:

    RuntimeError: Model class django.contrib.auth.models.Permission doesn't declare an explicit app_label and isn't in an application
    in INSTALLED_APPS.

    原来我把django的settings文件里的模块都注释掉了,而相应关联的位置没有更改,于是解除注释重新运行,过了

    可以运行以下的命令来进行检查跟踪:

    • python manage.py validate -- 检查模型的结构错误。
    • python manage.py sqlcustom polls -- 输出所有为应用定义的自定义SQL语句 (例如表修改和约束)。
    • python manage.py sqlclear polls -- 根据已存在的表,输出这个应用中必要的DROP TABLE语句。
    • python manage.py sqlindexes polls -- 输出这个应用CREATE INDEX语句。
    • python manage.py sqlall polls -- sql,sqlcustom和sqlindexes命令产生的SQL语句的结合。

    python manage.py migrate主要作用是生成相应的要使用的数据库,对应的models需要在settings里设置,如果有所更改,只需要用manage.py makemigrations命令来提交修改,然后运行python manage.py migrate就可以更新数据库。

    更新完毕后,你就可以在数据库里看到表,如果看不到,可以用api方式校验,详见下篇

  • 相关阅读:
    HDU 3555 Bomb (数位DP)
    ms sqlserver数据库主文件特别大怎么办
    w3wp.exe占用cpu特别高
    Excel的数据批量替换
    用Excel的分列功能格式化时间
    sql cte的使用
    数据结构
    http与浏览器学习
    长方形裁切优化与矩形物料排料
    架构知识
  • 原文地址:https://www.cnblogs.com/slqt/p/5154756.html
Copyright © 2011-2022 走看看