我正在尝试使用 Laravel 4 中的 Knockout/Jquery 执行 .ajax get 来填充表。我使用 Ardent 并且它一直响应以下 json 响应。
{"throwOnFind":false}
控制器:
public function getData()
{
$roles = Role::select(array('roles.id', 'roles.name', 'roles.id as users', 'roles.created_at'));
return Response::json($roles, 200, array('Content-Type' => 'application/json'));
}
JavaScript:
function Role(data) {
this.id = ko.observable(data.id);
this.name = ko.observable(data.name);
this.users = ko.observable(data.users);
this.created_at = ko.observable(data.created_at);
}
function ViewModel() {
var self = this;
self.roles = ko.observableArray([]);
$.ajax({
type: "GET",
url: "{{ URL::to('admin/roles/data') }}",
complete: function(allData) {
var mappedRoles = $.map(allData, function(item) {
return new Role(item);
});
}
}, "json");
self.roles(mappedRoles);
}
ko.applyBindings(new ViewModel());
我真的不知道从这里去哪里。我认为问题可能出在 Ardent 上。