9
Probablemente haya una manera fácil de hacerlo, pero parece que no puedo averiguar cómo.
Cuando hago clic en mi botón de borrar se muestra a continuación éxitos angulares de la siguiente URL:
http://localhost:8080/rest/managedCourse?id=3
¿Cómo puedo conseguir que golpeó pasar una variable de ruta en lugar de un parámetro de la petición así:
http://localhost:8080/rest/managedCourse/3
Heres mi html:
<table>
<tr ng-repeat="course in page.content">
<td>{{course.title}}</td>
<td>{{course.description}}</td>
<td>{{course.creditValue}}</td>
<td><button ng-click="remove(course.id)">Delete</button></td>
</tr>
</table>
Y aquí es mi controlador:
function ManagedCourseController($scope, $resource)
{
var ManagedCourse = $resource("rest/managedCourse/:courseId", {courseId:'@id'});
$scope.page = ManagedCourse.getPage({"page.page": "0", "page.size": "3", "page.sort": "title", "page.sort.dir": "asc"});
$scope.create = function (managedCourse) {
ManagedCourse.create(managedCourse);
}
$scope.remove = function (courseId) {
ManagedCourse.remove({id:courseId});
}
}
¿El /: parte ID simplemente ignorados entonces? Solo quiero entender cómo funciona eso. – testing123
Aunque esto parece funcionar, también me pregunto cómo funciona esto. La [documentación de AngularJS sobre $ recurso] (https://docs.angularjs.org/api/ngResource/service/$resource) parece no explicar este comportamiento. Documenta los valores en exceso se agregan como parámetros de consulta, pero no cómo se saltan partes de la plantilla de URL –
¿Y cómo lo haría para una acción personalizada? – Stephane