diff --git a/docs/release-notes/version-2.11.md b/docs/release-notes/version-2.11.md index c89d5dde0..112b62a64 100644 --- a/docs/release-notes/version-2.11.md +++ b/docs/release-notes/version-2.11.md @@ -14,6 +14,7 @@ * [#6284](https://github.com/netbox-community/netbox/issues/6284) - Avoid sending redundant webhooks when adding/removing tags * [#6496](https://github.com/netbox-community/netbox/issues/6496) - Fix upgrade script when Python installed in nonstandard path * [#6502](https://github.com/netbox-community/netbox/issues/6502) - Correct permissions evaluation for running a report via the REST API +* [#6517](https://github.com/netbox-community/netbox/issues/6517) - Fix assignment of user when creating rack reservations via REST API * [#6525](https://github.com/netbox-community/netbox/issues/6525) - Paginate related IPs table under IP address view --- diff --git a/netbox/dcim/api/views.py b/netbox/dcim/api/views.py index 9d402227f..47ab26828 100644 --- a/netbox/dcim/api/views.py +++ b/netbox/dcim/api/views.py @@ -246,10 +246,6 @@ class RackReservationViewSet(ModelViewSet): serializer_class = serializers.RackReservationSerializer filterset_class = filtersets.RackReservationFilterSet - # Assign user from request - def perform_create(self, serializer): - serializer.save(user=self.request.user) - # # Manufacturers diff --git a/netbox/dcim/tests/test_api.py b/netbox/dcim/tests/test_api.py index 24130c649..5e7f44203 100644 --- a/netbox/dcim/tests/test_api.py +++ b/netbox/dcim/tests/test_api.py @@ -349,40 +349,36 @@ class RackReservationTest(APIViewTestCases.APIViewTestCase): user = User.objects.create(username='user1', is_active=True) site = Site.objects.create(name='Test Site 1', slug='test-site-1') - cls.racks = ( + racks = ( Rack(site=site, name='Rack 1'), Rack(site=site, name='Rack 2'), ) - Rack.objects.bulk_create(cls.racks) + Rack.objects.bulk_create(racks) rack_reservations = ( - RackReservation(rack=cls.racks[0], units=[1, 2, 3], user=user, description='Reservation #1'), - RackReservation(rack=cls.racks[0], units=[4, 5, 6], user=user, description='Reservation #2'), - RackReservation(rack=cls.racks[0], units=[7, 8, 9], user=user, description='Reservation #3'), + RackReservation(rack=racks[0], units=[1, 2, 3], user=user, description='Reservation #1'), + RackReservation(rack=racks[0], units=[4, 5, 6], user=user, description='Reservation #2'), + RackReservation(rack=racks[0], units=[7, 8, 9], user=user, description='Reservation #3'), ) RackReservation.objects.bulk_create(rack_reservations) - def setUp(self): - super().setUp() - - # We have to set creation data under setUp() because we need access to the test user. - self.create_data = [ + cls.create_data = [ { - 'rack': self.racks[1].pk, + 'rack': racks[1].pk, 'units': [10, 11, 12], - 'user': self.user.pk, + 'user': user.pk, 'description': 'Reservation #4', }, { - 'rack': self.racks[1].pk, + 'rack': racks[1].pk, 'units': [13, 14, 15], - 'user': self.user.pk, + 'user': user.pk, 'description': 'Reservation #5', }, { - 'rack': self.racks[1].pk, + 'rack': racks[1].pk, 'units': [16, 17, 18], - 'user': self.user.pk, + 'user': user.pk, 'description': 'Reservation #6', }, ]