Angular.js相当于`rails generate scaffold`?

时间:2014-01-06 00:17:46

标签: javascript ruby-on-rails angularjs yeoman

我正在编写一个带有angularjs前端和Rails后端的应用程序。该应用程序的一个功能允许对员工列表进行标准操作。可以添加和删除,列出员工,并可以编辑其名称。

在传统的Rails应用程序中,实现这些功能所需的大部分代码都可以使用生成器创建,例如:与rails generate scaffold employee name:string

假设我使用上面的Rails生成器命令创建了一个restful api,是否有一个等效的工具可以用来在Angular中构建一个前端?我想我希望它能够生成视图,控制器和获取员工数据的服务。我知道Yeoman角度发生器。 Yeoman可以做我需要的吗?如果是这样,怎么样?

我对Rails很满意,但对Angular很新。是否存在为宁静资源生成基本前端代码的工具?

非常感谢你的帮助。

1 个答案:

答案 0 :(得分:4)

Yeoman可以做到这一点:

yo angular; //generate an angular app
yo angular:route employee; //generates a controller and a view for employee
yo angular:service employee; //generate an employee service

然后修改服务员工,使其返回资源(确保包含angular-resource.js)

angular.module('myMod').service('employee', ['$resource', function ($resource) {
   return $resource('/path/to/rest/endpoint/for/employee');
}]);

angular.controller('employee', ['$scope', 'employee', function($scope, employee) {
    $scope.employee = employee.get({id: 1}); 
    //employee is now whatever /path/to/rest/endpoint/for/employee?id=1 returns
}]);

然后你可以做

  employee.name = 'John Smith';
  employee.$save(); 
 //sends a post with {id:1, name:'John Smith'}