我目前正在学习一些东西来教授自己AngularJS,而且我正在运行双向数据绑定的问题。我现在已经设置它来从数据库中获取信息。AngularJS:使用mySQL数据库进行双向数据绑定
当我调用链接时,我从数据库接收信息。我首先搜索用户。在这种情况下,我搜索了胡安娜卡斯蒂略。
localhost:8080/api/person?name=Juana+Castillo
,经过“搜索”返回胡安娜卡斯蒂略的信息如下:
{
"count": "1",
"input": null,
"results": {
"DateOfBirth": "12/24/1999",
"secPosition": "Goalkeeper",
"ACT": "20",
"Email": "[email protected]",
"ParentApproval": 0,
"Views": "/trunk/files/f00000.txt",
"EmailConfidential": 1,
"Address": "2 Av. Pres. Castelo Branco, Rio de Janeiro, Brazil",
"SAT": "900",
"Name": "Juana Castillo",
"Level": "Amateur",
"CountryPlayingIn": "Brazil",
"GPA": 3.5,
"Graduation": "May 2016",
"priPosition": "Goalkeeper",
"Gender": "F",
"PhoneNumber": "55 800 062 7222",
"Citizenship": "Brazilian",
"Links": "/trunk/files/f00000.txt",
"Videos": "/trunk/files/f00000.txt",
"FieldOfStudy": "/trunk/files/f00003.txt",
"Committed": "/trunk/files/f00000.txt",
"Sport": "Soccer",
"TOEFL": "28"
},
"method": "GET",
"kwargs": {
"name": "Juana Castillo"
}
}
我的问题是,得到这个信息后,有什么通常人们的双向数据绑定的方式将此信息显示给前端?
我用下面建我的网页:
- AngularJS
- CherryPy的服务器
- MySQL数据库
事情我使用不是:
- PHP
目前,我第一次与任何有从数据库中获取信息,做工作,我如何显示在前端此信息目前不能确定。
这里是我的尝试:
app.controller('PlayerCtrl', ['$scope',
'$location',
'$log',
'$window',
'$rootScope',
'Person',
function ($scope,
$location,
$log,
$window,
$rootScope,
Person) {
$scope.options;
$scope.Name;
$scope.Email;
$scope.Summary;
$scope.Position;
$scope.Gpa;
$scope.Gender;
$scope.priPosition;
$scope.secPosition;
$scope.ACT;
$scope.SAT;
$scope.TOEFL;
$scope.Citizenship;
$scope.FieldOfStudy;
$scope.Sport;
$scope.Country;
$scope.Address;
$scope.DateOfBirth;
$scope.Level;
// function for snagging specific DB entries
$scope.getPage = function (searchOption) {
Person.get(searchOption).$promise.then(function (data) {
var pulledData = [];
pulledData = data.results;
$scope.$apply(function() {
$scope.Email = pulledData["Email"];
$scope.Name = pulledData["Name"];
$scope.Summary = pulledData["Summary"];
$scope.Position = pulledData["Position"];
$scope.Gpa = pulledData["GPA"];
$scope.Gender = pulledData["Gender"];
$scope.priPosition = pulledData["priPosition"];
$scope.secPosition = pulledData["secPosition"];
$scope.ACT = pulledData["ACT"];
$scope.SAT = pulledData["SAT"];
$scope.TOEFL = pulledData["TOEFL"];
$scope.Citizenship = pulledData["Citizenship"];
$scope.FieldOfStudy = pulledData["FieldOfStudy"];
$scope.Sport = pulledData["Sport"];
$scope.Country = pulledData["CountryPlayingIn"];
$scope.Address = pulledData["Address"];
$scope.DateOfBirth = pulledData["DateOfBirth"];
$scope.Level = pulledData["Level"];
});
});
};
}]);
你已经在Angular上构建它,所以使用Angular。你真的是双向的吗? –
太通用的问题。转到angularjs站点并浏览一些教程。一切都会变得清晰(或者你的问题会变得更具体) – VikciaR
使用角度。获取响应,将其放入一个范围变量并在那里使用。通过两种方式,如果你的意思是单向前端和其他数据库端(直接DML),我不认为这样的双向工作 – Codeek