我在角度部分
中有以下内容<h1>{{tournament.name}}</h1>
<accordion close-others="true">
<accordion-group>
<accordion-heading>
<p>Schools</p>
</accordion-heading>
<input ng-model="newSchoolName" placeholder="new school name">
<button class="btn-sm" ng-click="addNewSchool()" ng-disabled="!newSchoolName">Add New School</button><br/>
...
以及我控制器中的以下内容
tournamentControllers.controller("ConsoleController",['$scope','$http', function($scope, $http){
$scope.update = function(){
console.log("update");
$http({method:'GET', url: '/tournament/console_api'}).
success(function(data,status,headers,config){
$scope.tournament = data;
}).error(function(data,status,headers,config){
console.log("error");
});//Initial schools
};
$scope.update();
$scope.addNewSchool = function(){
$http.post('/tournament/add_school',{
new_name : $scope.newSchoolName
}).success(function(data,status,headers,config){
$scope.tournament = data;
}).error(function(data,status,headers,config){
console.log("error");
});
};
如果我注释掉ui.bootstrap部分(但是不要删除它们),它可以很好地工作,但是如果我把它们放进去,它最终会发送空的JSON对象&#34;锦标赛&#34; = {}我猜的是来自我所说的行&#34; $ scope.tournament = data;&#34;,
我使用角度1.2.9,角度路线,角度消毒ui.bootstrap 0.11.0和bootstrap.css。提前谢谢。
编辑:以下是rails控制台日志
给出的发布请求的结果参数:{&#34;锦标赛&#34; =&gt; {}}不工作时
参数:{&#34; new_name&#34; =&gt;&#34; gwgfwf&#34;,&#34;锦标赛&#34; =&gt; {}}工作时
在尝试大量调试之后,它与在手风琴中创建的子范围有关,而不包括newSchoolName。不知道如何解决这个问题。
答案 0 :(得分:1)
你对孩子的范围是正确的。
来自this question:&#34; 您需要使用对象而不是原始&#34;
<input ng-model="school.newSchoolName" placeholder="new school name">
<button class="btn-sm" ng-click="addNewSchool()" ng-disabled="!school.newSchoolName">Add New School</button><br/>
和:
$http.post('/tournament/add_school',{
new_name : $scope.school.newSchoolName
}
别忘了宣布$scope.school
:
$scope.school = {newSchoolName: ''};
我仍然不知道你发送tournament => {}
的原因。