我在尝试运行 django 测试时收到错误消息 这是我的模型文件代码
class MountPoint(models.Model):
name = models.CharField(max_length=100)
backend = models.CharField(max_length=200,default=DEFAULT_BACKEND)
path = models.CharField(max_length=300)
def __unicode__(self):
return self.name
这是我测试的类(class)
class MountPoint(TestCase):
def create_mountpoint(self):
name = "test"
backend = "test"
path = user_root
return MountPoint(name, backend, path)
def test_mountpoint_creation(self):
m = self.create_mountpoint()
self.assertTrue(isinstance(m, MountPoint))
self.assertEqual(m.__unicode(), m.name)
我收到的错误消息如下。它说我有比预期更多的投入。
追溯(最近的调用最后): 文件“/Users/xihui/Documents/WebProgramming/django/ece264site/filesystem/tests.py”,第18行,在test_mountpoint_creation m = self.create_mountpoint() 文件“/Users/xihui/Documents/WebProgramming/django/ece264site/filesystem/tests.py”,第15行,create_mountpoint 返回挂载点(名称,后端,路径) 类型错误:init() 最多接受 2 个参数(给定 4 个)
在 0.009 秒内运行 1 个测试
失败(错误=1)
最佳答案
我认为你必须使用关键字参数:
return MountPoint(name=name, backend=backend, path=path)
关于python - 类型错误 : __init__() takes at most 2 arguments (4 given),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33492596/