繁体   English   中英

得到“ TypeError:__init __()接受1个位置参数,但给出了10个”

getting “TypeError: __init__() takes 1 positional argument but 10 were given”

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在尝试运行单元测试,以查看我的数据库表是否正在按原样保存信息。 但是,我不断收到此错误,

u1 = User("test", "user", "testuser123", "test@test.com", "password", None, "California", None, None)
TypeError: __init__()接受1个位置参数,但给出了10个位置”

我觉得很奇怪,因为我正在提交模型类所需的所有数据。 这是我的代码:

Models.py文件

class User (db.Model):
    """User in the system"""

    __tablename__ = "users" 

    id = db.Column( 
        db.Integer, 
        primary_key=True    
    )   
    firstname = db.Column(  
        db.Text,    
        nullable=False  
    )   
    lastname = db.Column(   
        db.Text,    
        nullable=False  
    )   
    username = db.Column(   
        db.Text,    
        nullable=False, 
        unique=True 
    )   
    email = db.Column(  
        db.Text,    
        nullable=False, 
        unique=True 
    )   
    password = db.Column(   
        db.Text,    
        nullable=False  
    )   
    image = db.Column(  
        db.Text 
    )   
    state = db.Column(  
        db.Text,    
        nullable=False  
    )   
    vax_date = db.Column(   
        db.Text,
        nullable=True  
    )   
    covid_status = db.Column(   
        db.Text,
        nullable=True
    )   

    review = db.relationship('Review', backref='users')

这是我的单元测试

class UserModelTestCase(TestCase):
    """Test case for User Model"""

    def setUp(self):
        """Create test client, add sample data."""

        db.drop_all()
        db.create_all()

        u1 = User("test", "user", "testuser123", "test@test.com", "password", None, "California", None, None)
        uid1 = 1111
        u1.id = uid1
        
        db.session.commit()

        u1 = User.query.get(uid1)

        self.u1 = u1
        self.uid1 = uid1

        self.client = app.test_client()

    def tearDown(self):
        res = super().tearDown()
        db.session.rollback()
        return res

    def test_user_model(self):
        """Does basic model work?"""

        u = User(
            firstname='test',
            lastname='case',
            username="testuser",
            email="test@testing.com",
            password="HASHED_PASSWORD",
            image=None,
            state="Arizona"
        )

        db.session.add(u)
        db.session.commit()

        # User should have no messages & no followers
        self.assertEqual(u.firstname, 'test')
问题暂未有回复.您可以查看右边的相关问题.
3 Pytorch: [TypeError: __init__() 需要 1 个位置参数,但给出了 2 个]

我搜索了 StackOverflow 并访问了其他网站寻求帮助,但我找不到解决我的问题的方法。 我将留下整个代码,以便您可以理解。 大约 110 行,用 PyTorch 编写。 每次,我都会编译和计算一个预测,这个错误代码会出现: 我知道,其他用户也有这个问题,但他们的解决方案都没有帮助我。 ...

7 Django 错误 TypeError: __init__() 需要 1 个位置参数,但给出了 2 个

我对 python 有点陌生,我正在尝试使用在我的 Django 项目中使用序列化程序类序列化的外部 API,但出现以下错误 请看下面我的观点 老实说,我不知道错误来自哪里 请告诉我如何解决这个问题以及错误来自哪里 还有哪个__init__()是错误所指的? 编辑我编辑了问题中的代码实现了 ...

9 /users/login/ __init__() 处的类型错误采用 1 个位置参数,但给出了 2 个

我目前正在编写“Python Crash course”一书中的教程。 本教程是关于使用 Django 创建“学习日志”Web 应用程序。 该应用程序的想法是允许用户: 1. 创建他们所了解的“主题” 2. 向这些主题添加“条目”,描述他们所了解的特定于这些主题的详细信息 当我运行时,我目前停留在 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM