【发布时间】:2014-09-26 06:53:11
【问题描述】:
我正在学习 angular,并将一个附加到 rails api。我正在使用角度{{example.date}} 在我的视图中渲染对象的日期。我假设按摩从我的 rails api 出来的 JSON 的最佳位置是在角度控制器中,但很难掌握如何做到这一点。这是我的设置:
Rails 控制器:
class ExampleController < ApplicationController
def index
render json: Example.all
end
def show
render json: Example.find(params[:id])
end
end
Angular 服务(coffeescript):
App.factory 'Example', ['$resource', ($resource)->
$resource '/api/examples/:id', id: '@id'
]
Angular 控制器(coffeescript):
App.controller 'ExampleCtrl', ['$scope', 'Example', ($scope, Example) ->
$scope.example = Example.query()
]
在我的 haml 视图中,所有这些基本管道都以ng-repeat告终:
%div{"ng-controller" => "ExampleCtrl"}
%ul
%li{"ng-repeat" => "example in example"}
%h3 {{example.date}}
我相信我在角度控制器中的Example.query() 正在返回一个包含所有数据的大型数组。我将如何在咖啡脚本中编写一个 each 循环来将所有日期时间(例如 Tue, 23 Sep 2014 00:00:00 UTC +00:00)转换为格式化日期?我已经在我的应用程序上连接了凉亭,如果有帮助,我可以安装 moment js。
谢谢
【问题讨论】:
-
你试过 ng-filter 吗?我们可以使用过滤器修改我们的数据。您甚至可以格式化日期
-
成功了。学习角度,不知道 ng-filter。漂亮,谢谢!
-
现在它可以正确过滤日期,但会向下舍入到前一个日期。
2014-01-01T00:00:00.000Z现在将变为Dec 31, 2013 -
你可以发布你正在尝试的表达方式
-
{{example.date | date:'longDate'}}我认为这可能与T00:00:00.000Z的时间有关。我现在正尝试在 rails 控制台中的所有记录中添加 1 秒
标签: javascript ruby-on-rails angularjs datetime coffeescript