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方式校验,详见下篇

  • 相关阅读:
    ci框架——文章查看之上篇下篇
    ci框架——分页
    ci框架——数据库(增删改查)
    全选和反选
    基于CI框架的管理系统
    在dedecms系统下, 改写火车头的入库接口 写一个接口文件运行一次自动读取 http://news.163.com/rank/
    缩略图
    php——两种无限级分类
    webpack和webpack-dev-server安装配置(遇到各种问题的解决方法)
    python装饰器
  • 原文地址:https://www.cnblogs.com/slqt/p/5154756.html
Copyright © 2011-2022 走看看