我正在尝试使用AngularJS和API进行更新
服务:expense.js
angular
.module('timeTrackerApp.services',[])
.service('Expense', ['$resource', function ($resource) {
return $resource('/api/v1/expenses/:id', {id:'@id'}, {
'update': {
method: 'PUT'
},
'destroy': {
method: 'DELETE'
}
})
}])
控制器:expenses_controller.rb
def permitted_params
params.require(:expense).permit(:name, :price)
end
因此,预期的JSON格式为{费用:{名称:“值”,价格:值}},
但我却收到{名称:“值”,价格:值}
那么有人可以帮助我将其包装到根节点(费用)吗?
当控制器名称与型号名称匹配时,Rails会自动包装参数。检查文件。
如果失败了,您可以在控制器中手动进行操作:
wrap_parameters :expense, include: [:name, :price]
因此,如果您收到:
{ name: 'name', price: 'price' }
控制器将为您提供:
{ name: 'name', price: 'price', expense: { name: 'name', price: 'price' } }
服务器端也是如此,因为它简洁明了。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句