I'm working on angular
application with Django
with rest-framework
..
The app receives it's info with json from the server.. One of the keys is created_time
... The value of this field is format according to iso-8601
, for example 2015-05-29T19:06:16.693209Z
.
In the client I have a field:
<input type="time" ng-model="created_time">
But when the data is arriving I get this error:
Error: [ngModel:datefmt] Expected `2015-05-29T19:06:16.693209Z` to be a date http://errors.angularjs.org/1.3.13/ngModel/datefmt?p0=2015-05-29T19%3A06%3A16.693209Z
at REGEX_STRING_REGEXP (angular.js:63)
at Array.<anonymous> (angular.js:19807)
at Object.ngModelWatch (angular.js:23289)
at Scope.$get.Scope.$digest (angular.js:14235)
at Scope.$get.Scope.$apply (angular.js:14506)
at done (angular.js:9659)
at completeRequest (angular.js:9849)
at XMLHttpRequest.requestLoaded (angular.js:9790)
I already tried everything :( the format is exactly as the instructions in the docs of angular...
If you need to update all dates in Array with Objects
This must be happening with angular 1.3+. 1.3+ on wards ng-model for date/time input needs to be a valid date object, string representation of date is no longer allowed. You need to convert string to date object (
$scope.created_time = new Date(dateString)
) and bind it to the ng-model. If you follow the error link it has a clear description about the error and how to resolve it.