6.2 Controllers -- Representing Multipe Models

1. 一个controller的modle可以代表几个记录也可以带便单个。这里,路由的model hook返回一个歌曲数组:

app/routes/songs.js

export default Ember.Route.extend({
  model() {
    return this.store.findAll(‘song‘);
  }
});

songs的模板中,我们可以使用{{#each}}辅助器来展示每一首歌曲:

app/templates/songs.hbs

<h1>Playlist</h1>

<ul>
  {{#each model as |song|}}
    <li>{{song.name}} by {{song.artist}}</li>
  {{/each}}
</ul>

2. 你可以使用controller去收集model有关的集合信息。例如,想想一下我们希望展示长度超过30秒的歌曲的数量。我们可以为controller添加一个新的计算属性叫做longSongCount

app/controllers/songs.js

export default Ember.Controller.extend({
  longSongCount: Ember.computed(‘[email protected]‘, function() {
    let songs = this.get(‘model‘);
    let longSongs = songs.filter((song) => {
      return song.get(‘duration‘) > 30;
    });
    return longSongs.get(‘length‘);
  })
});

现在我们可以在模板中使用这个属性:

app/templates/songs.hbs

<ul>
  {{#each model as |song|}}
    <li>{{song.name}} by {{song.artist}}</li>
  {{/each}}
</ul>

{{longSongCount}} songs over 30 seconds.
时间: 2024-10-12 09:01:39

6.2 Controllers -- Representing Multipe Models的相关文章

MVC &amp; Entity Framework(2)- controller、Models单独DLL

继上一篇MVC & Entity Framework(1)- 开发环境之后,已经很久没更新了.接下来记录一下怎么把MVC中的controller单独拆为一个类库,然后在web项目中引用.另外,顺便尝试把Models中的实体类也拆为一个单独的类库. 1.Controller类库项目 ①添加一个普通的类库(.Net Framework4.5) ②在PM控制台输入以下命令Nuget命令安装MVC的引用——这里直接在项目的“引用”那里右键“添加引用”,效果是一样的. 这里指定版本号4.0.20710.0

Learning JavaScript Design Patterns -- A book by Addy Osmani

Learning JavaScript Design Patterns A book by Addy Osmani Volume 1.6.2 Tweet Copyright © Addy Osmani 2015. Learning JavaScript Design Patterns is released under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 unported license. It

微信公众号开发代码参考

<?php namespace backend\modules\api\controllers; use common\models\SmsReport; use common\models\Aes; use common\models\Counter; use common\models\Phone; use common\models\City; use common\models\oss\oss; use common\models\PersonLooking; use Yii; use

laravel队列-让守护进程处理耗时任务

待解决的问题 最近在做一个服务器集群管理的web项目,需要处理一些极其耗时的操作,比如磁盘格式化分区.对于这个需求,最开始的想法是,为了让节点上的rpc(远程过程调用) service端尽可能简单(简单到只需要popen执行一条指令即可,有时间我再专门写一篇博客讲讲这个项目的rpc是如何实现的),我们选择了让web端直接等待处理结果,那么问题来了,如何保证用户不必等待,又能保证任务准确的执行呢? 简单的rpc结构如下图 以往在处理一些稍微耗时的操作,可以通过优化代码结构,优化数据库操作次数,起一

php Laravel 框架之建立后台文件夹 二

在前面的章节中我们讲解过如何在 Laravel框架中建立后台文件夹. php Laravel 框架之建立后台文件夹 现在我们再添加一块内容.是关于自动加载的部分. 在我们app目录中还有个start目录.它里面这样写道: In addition to using Composer, you may use the Laravel class loader to load your controllers and models. This is useful for keeping all of

Yii2框架RESTful API教程(一) - 快速入门

前不久做一个项目,是用Yii2框架写一套RESTful风格的API,就去查了下<Yii 2.0 权威指南 >,发现上面写得比较简略.所以就在这里写一篇教程贴,希望帮助刚接触Yii2框架RESTful的小伙伴快速入门. 一.目录结构 实现一个简单地RESTful API只需用到三个文件.目录如下: frontend ├─ config │ └ main.php ├─ controllers │ └ BookController.php └─ models └ Book.php 二.配置URL规则

ASP.NET MVC - 探究应用程序文件夹

为了学习 ASP.NET MVC,我们将构建一个 Internet 应用程序. 第 2 部分:探究应用程序文件夹. MVC 文件夹 一个典型的 ASP.NET MVC Web 应用程序的文件夹内容如下所示:   应用程序信息 PropertiesReferences 应用程序文件夹 App_Data 文件夹Content 文件夹Controllers 文件夹Models 文件夹Scripts 文件夹Views 文件夹 配置文件 Global.asaxpackages.configWeb.conf

CRUD生成器DBuilder设计与实现

文章由作者原创,最先发表在我的博客园:http://www.cnblogs.com/lvyahui/p/5626466.html. 可以加群交流:146103720 群链接: 源码位于github:https://github.com/lvyahui8/dbuilder.git .文中图片如果太小看不清楚,请右键点击"在新标签页中打开"即可看到原图 第一章           引言 1.1 研究背景及意义 计算机软件技术发展至今,数据库已成为最广泛使用的存储格式化数据的媒介,数据库程序

php自动加载

php自动载方法有两种. 第一种方案用__autoload,这个函数较简单,也较弱. 但有一问题没有解决, 就是在include前判断文件是否存在的问题. 1 2 3 4 5 6 7 8 9 10 11 12 13 set_include_path('aa' . PATH_SEPARATOR . get_include_path()); function __autoload($className) {     //如果加这个检测, 因为此文件不在当前目录下,它就会检测不到文件存在,    //