“ test_put_method_success”显示AssertionError:404!=200。如何解决? ...............................
class BasicTest(APITestCase):
def setUp(self):
self.client = Client()
self.user = User(username="admin", email="[email protected]")
self.user.is_staff = True
self.user.set_password('admin')
self.user.save()
def test_put_method_success(self):
url = "http://127.0.0.1:8000/settings/modules/1/"
data = {
'modulename': "Module test update",
'activation_status': "Active"
}
self.assertTrue(self.client.login(username="admin", password="admin"))
response = self.client.put(url, data, format='json')
print(response.status_code)
self.assertEqual(response.status_code, status.HTTP_200_OK)
urls.py
from rest_framework import routers
router = routers.DefaultRouter()
router.register('modules', views.ModuleView)
urlpatterns = [
path('', include(router.urls)),
]
默认情况下,DRF PUT不会创建实例。您需要一些额外的步骤,例如explained by the documentation。