<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def assign(self, objects, nurest_object_type, async=False, callback=None, commit=True):
 """ Reference a list of objects into the current resource Args: objects (list):
 list of NURESTObject to link nurest_object_type (type):
 Type of the object to link callback (function):
 Callback method that should be fired at the end Returns: Returns the current object and the connection (object, connection) Example: """


        ids = list()

        for nurest_object in objects:
            ids.append(nurest_object.id)

        url = self.get_resource_url_for_child_type(nurest_object_type)
        request = NURESTRequest(method=HTTP_METHOD_PUT, url=url, data=ids)
        user_info = {'nurest_objects': objects, 'commit': commit}

        if async:
            return self.send_request(request=request,
                                     async=async,
                                     local_callback=self._did_perform_standard_operation,
                                     remote_callback=callback,
                                     user_info=user_info)
        else:
            connection = self.send_request(request=request,
                                           user_info=user_info)

            return self._did_perform_standard_operation(connection)