构建Ember Power-Select组件

dbi*_*tti 3 ember.js

想知道是否可以如下使用Ember功率选择.

我有一个有相关记录的模型.我正在尝试使用PS从其中一个列表中选择以设置另一个相关记录.为了更全面地解释,这是最终的结束状态.(这是一场歌唱比赛,模特大写):

  • 每位参赛者演唱多首歌曲
  • 每首歌都有一张图表
  • 每位参赛者提交多份提交(提前)进行预先审批
  • 每个提交都有一个图表

我正在尝试使用power-select从每个参赛者特定的预先清除的提交列表中选择每首歌曲的图表.

我可以让部分事情发挥作用,但不能将整个事情放在一起因为(我认为)我正在尝试排列提交和图表,这些是相关但不同的项目.

所以,在代表参赛者模特的网页上,我正在尝试:

{{power-select options=model.submissions onchange=(action pseudo-code: save selected submission.chart to model.chart.)}}

我知道这对格式来说是个难题,但是我无可救药地陷入困境

更新: 我仍然认为我错过了一些东西.以下是显示所有模型及其关系的模式. 模式

在这种情况下,主要的"页面"(即"模型")是Performance.每个表演都有多首歌曲(准确地说是两首),出于用户界面的目的,我希望同时显示.所以我{{#each model.songs as |song|}}在这个上下文中使用了一个chart.每个人song都有一个父母chart.作为进一步的复杂情况,给定的图表song不一定必须出现在submission表格中; 但在大多数情况下,图表列表将受到限制.

因此,最终我要做的是chart根据通过submission表格提交的内容(根本是多对多的传递),有一个过滤的对象列表.最终我希望将chart字段保存在song模型,这意味着performance页面上有两个电源选择组件.

我知道非常复杂的问题.但幸运的是,我已准确地传达了这个问题......谢谢

mig*_*mba 5

如果我有了这个想法,你只想在用户选择一个选项时设置belongsTo关系.

{{#power-select 
  options=model.submissions
  selected=model.chart
  onchange=(action (mut model.chart) value="chart") as |submission|}}

  {{submission.name}}

{{/power-select}}
Run Code Online (Sandbox Code Playgroud)

选择提交时,它只会调用 model.set('chart', submission.chart)