ngResourceを使い、Rails側で構築したAPIを通して新しいarticleをDBに格納した後、URLに保存された新しいarticleのidを含むeditページにリダイレクトさせたいです。

/articles/new -> articles/[newで保存されたarticleのid]/edit

以下が現在のコードです。new.html.slim(articles#new)にてarticleの新規作成を行い、DBへの格納が成功すれば、直前に格納されたidをconsole.logに出力させたいのですが、上手くいきません。いろいろ試行錯誤していますが、new_article.idがundefinedになってしまいます。。ご教授いただけますと嬉しいです。よろしくお願いいたします。

= = =

new.html.slim

div ng-controller="ArticleController" ng-init=""

  form id="new_article" ng-submit="addArticle(article)"
    input type="text" ng-model="article.title"
    input type="submit" value="add"

= = =

ArticleController.coffee

angular.module('test').controller "ArticleController", ($scope, Article) ->

  $scope.addArticle = (article) ->
    @articleService = new Article(serverErrorHandler)
    new_article = @articleService.create(title: article.title)
    alert new_article.id
    $window.location.href = "/articles/"+new_article.id+"/edit"
    return

= = =

ArticleService.coffee

angular.module('test').factory 'Article', ($resource, $http) ->
  class Article

    constructor: (errorHandler) ->
      @service = $resource('/api/articles/:id',
        { id: '@id' },
        { update: { method: 'PUT' }})
      @errorHandler = errorHandler

    find: (id, successHandler) ->
      @service.get(id: id, ((article)->
        successHandler?(article)
        article),
        @errorHandler)

    create: (attrs) ->
      new @service(article: attrs).$save ((article) -> attrs.id = article.id), @errorHandler
      attrs

    update: (article, attrs) ->
      new @service(article: attrs).$update {id: article.id}, (-> null), @errorHandler