我想测试创建事物的视图,您可以在其中选择多个用户(以及其他详细信息)。
我定义了一个 Thing 模型,有一个“用户”ManyToManyField 到 User 模型(来自 Django 发布的身份验证应用程序)。
这是我的测试代码:
class ViewsTest(TestCase):
def test_create(self):
my_users = [...some User instances...]
response = self.client.post("/create/", {...stuff...,
'users': [user.id for user in my_users]})
self.assertEqual(200, response.status_code)
created_thing = Thing.objects.get(...)
self.assertListEqual(my_users, [user for user in created_thing.users.all()])
这个测试通过了,所以一切都很好,但我对最后的列表理解感到恼火。没有更优雅的方式将created_thing.users作为列表吗?
我正在使用 Django 1.4.1。