您的位置:首页 > 编程语言 > Python开发

Python学习笔记(六)

2016-04-12 21:54 609 查看
1、模型的继承
-两个模型之间除了外键以及其他关系之外,还可以从另一个模型继承来定义模型。

class Book(models.Model):
   Attr1
Attr2
Attr3

class SubBook(Book):
   Attr1 = models.ManyToManyField()

2.用下面的命令来验证model的有效性:python manage.py validate

3、执行python manage.py sqlall appname 产生App 'appname' has migrated error
-删除migrations目录,可行
-或者执行manage.py migrate 

4、获取数据库数据的记录:
-import MySQLdb
db = MySQLdb.connect('127.0.0.1','root','82326708','lab')

    cur = db.cursor()
cur.execute('select * from labpage_member')

    results = cur.fetchall()

    for row in results:

      id = row[0]

      name = row[1]

      pwd = row[2]

      print id
 
-直接调用模块中的类来操作数据库报错:
from labpage.models import Member
Member.objects.get(id=1) #error 一大堆
#have no idea

5、之前安装了python 2.7.9,然后又安装了python3.5两个版本的python都放在相同的目录下,(手动将一个版本删除之后,再装的另一个)
结果系统中仍显示2.7.9版本,python命令行可以使用,但是py文件不能识别,一个简单的输出字符例子中都显示'print'有错误
是版本冲突的问题:
-先将3.5修复了一下,然后发现360软件卸载中2.7.9版本可以卸载
-卸载完成后,还是识别不了py文件(python命令行一直可以运行.py)
-此时,3.5也可以卸载了,之前不能卸载,报A Problem has...问题,卸载了3.5
-将2.7.9再一次安装后,系统正常显示.py 文件

6、对于import MySQLdb引入时,报No Module named ...问题,首先注意MySQLdb的拼写,然后MySQL是需要手动进行安装的!
-无错误后,可以在python命令行中进行数据库的操作

7、在报settings not configuration时候,可以在程序中引入settings模块,然后settings。configure()进行配置
-settings中DATABASE字段是对数据库的设置,注意格式和内容
-NAME:是数据库的名字;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python django MySQLdb