【发布时间】:2013-12-11 06:29:03
【问题描述】:
好吧,我想我在这里又遇到了一些问题。我将解释我正在尝试做的事情。
我有一个teammembers 模板,我想在其中显示来自特定团队的团队成员及其特定信息。为此,我必须加入 3 张桌子。
这个查询应该给你一个想法:
SELECT *
FROM teams_members tm
inner join members m on tm.members_member_id=m.id
inner join teams t on tm.team_team_id=t.id
WHERE
t.team_name='Vancouver Canuck'
我最初认为我可以制作一个简单的数组并简单地做pushObject。但它不起作用,而且,我将如何展示它们?
这是我尝试过的:
App.Model = Ember.Object.extend({});
App.TeammembersController = Ember.ObjectController.extend({
teammembers : [], //This is for getTeamMembers Action, Coming as undefined
selectedTeam : null,
team : function() {
var teams = [];
$.ajax({
type : "GET",
url : "http://pioneerdev.us/users/getTeamNames",
success : function(data) {
for (var i = 0; i < data.teams.length; i++) {
var teamNames = data.teams[i];
teams.pushObject(teamNames);
}
}
});
return teams;
}.property(),
actions : {
getTeamMembers : function() {
teamName = this.get('selectedTeam.team_name');
data = {
team_name : this.get('selectedTeam.team_name'),
};
if (!Ember.isEmpty(teamName)) {
$.ajax({
type : "POST",
url : "http://pioneerdev.us/users/getTeamMembers",
data : data,
dataType : "json",
success : function(data) {
for (var i = 0; i < data.teammembers.length; i++) {
var teamNames = data.teammembers[i].firstname;
teammembers.pushObject(teamNames);
}
}
});
return teammembers;
console.log(teammembers);
} else {
}
}
}
});
我得到teammember 数组在此未定义。 当从 Ember.Select 中选择 Team Name 时,actions 中的 sn-p 将负责吐出 Team Member 的信息。
感谢https://stackoverflow.com/users/59272/christopher-swasey,我能够在这里重用我的sn-p:
<script type="text/x-handlebars" id="teammembers">
<div class="row">
<div class="span4">
<h4>Your Team Members</h4>
{{view Ember.Select
contentBinding="team"
optionValuePath="content.team_name"
optionLabelPath="content.team_name"
selectionBinding="selectedTeam"
prompt="Please Select a Team"}}
<button class="btn"
{{action 'getTeamMembers' bubbles=false }}>Get Team Members</button>
</div>
</div>
</script>
此外,用户会做什么,他将从 Ember.Select 中选择团队,当他单击按钮时,我应该能够在某个地方吐出团队成员及其信息。将来,我可能还想获取 id 并将它们从服务器中删除。我该怎么做呢?
那么,我应该使用自定义视图还是有其他方法可以做到这一点?
【问题讨论】:
标签: javascript ajax arrays json ember.js