Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-peewee接受2个位置参数,但给出了3个_Python_Peewee - Fatal编程技术网

Python-peewee接受2个位置参数,但给出了3个

Python-peewee接受2个位置参数,但给出了3个,python,peewee,Python,Peewee,我是学习Python的新手,当然,在下面的代码中,Python-连接到数据库sqlite: import os import pewee baza = pewee.SqliteDatabase('test.db') class BazaModel(): database = baza class Klasa(BazaModel): nazwa = pewee.CharField(null=False) profil = pewee.CharField(default='')

我是学习Python的新手,当然,在下面的代码中,Python-连接到数据库sqlite:

import os
import pewee

baza =  pewee.SqliteDatabase('test.db')

class BazaModel():
 database = baza

class Klasa(BazaModel):
 nazwa =  pewee.CharField(null=False)
 profil =  pewee.CharField(default='')

class Uczen(BazaModel):
 imie =  pewee.CharField(null=False)
 nazwisko =  pewee.CharField(null=False)
 klasa =  pewee.ForeignKeyField(Klasa, related_name='uczniowie')

baza.connect() 
baza.create_tables([Klasa, Uczen], True)
我有一个错误:

create_tables([Klasa,Uczen],True)类型错误:create_tables() 接受2个位置参数,但给出了3个


课程从2016年开始,所以我想有一个更新的peewee版本,但我不知道如何修复它…

三个参数是您的数据库、表列表和布尔值:
some\u obj。some\u fun(obj1,obj2)
被python翻译为
some\u fun(some\u obj,obj1,obj2)
。这说明它告诉您有3个位置参数,而不是2个

从中可以看出,create_表只接受一个额外的位置参数(数据库中有两个)。 您现在使用的第三个参数是关键字参数(不是位置参数),您必须指定它是什么,即您应该写:

baza.create_tables([Klasa, Uczen], safe=True)

请注意,避免使用pewee import*,这会使代码无法阅读。非常感谢!如果答案()解决了你的问题,请接受它