小编Nic*_*ick的帖子

重用没有循环依赖的服务

我有一个服务全局存储我的应用程序中使用的所有数据.

GlobalDataService(GDS)

angular
        .module('app.core')
        .service('GlobalDataService', GlobalDataService);
    GlobalDataService.$inject = ['$http', 'LineStatusService'];
    function GlobalDataService($http, LineStatusService) {
        var gds = this;

        gds.data = {
            //all my data
        }

        gds.data.lines = LineStatusService.getLineStatus().then...
    }
Run Code Online (Sandbox Code Playgroud)

还有一个简单的crud服务来处理我的数据状态.

StatusDataService(SDS)

angular
        .module('app.core')
        .service('LineStatusService', LineStatusService);
    LineStatusService.$inject = ['$http', 'GlobalDataService'];
    function LineStatusService($http, GlobalDataService) {
        var service = {
            getLineStatus: getLineStatus,
            saveLineStatus: saveLineStatus,
            ...
        };

        function saveLineStatus (line, status, user) {
            var data = {
                status: {
                    status_id: status.status_id,
                    status_desc: status.status_desc
                },
                updated_by: user
            }

            return $http.post('/api/euauto/v1/delivery-status/linestatus', data)
            .then(function successCallback(response) {
                GlobalDataService.data[id].status …
Run Code Online (Sandbox Code Playgroud)

javascript dependency-injection angularjs angular-services

5
推荐指数
1
解决办法
57
查看次数

在创建REST API时,使用Laravel嵌套动态资源控制器的正确方法

我已经找到了关于处理嵌套资源控制器和传递多个约束的好信息,但似乎没有发现这个特定问题(可能是因为我认为这一切都错了!).

如果我想在我的API中创建以下内容

  • / cars(显示所有车辆)
  • / cars/1(显示carId = 1)
  • / cars/1/performance(显示carId = 1的性能)
  • / cars/1/performance/parts(显示carId = 1的部件性能)
  • / cars/1/performance/parts/1(对于carId = 1,显示partId = 1的性能)
  • /汽车/性能(显示所有汽车的性能)
  • /汽车/性能/件
  • /部分
  • / parts/1等......(与上面的汽车零件相同)

我是否必须以这种方式为大多数人创建路线和控制器

Route::group(array('prefix' => 'myAwesomeCarApi'), function()
{
    Route::resource('cars', 'CarsController'); 
    Route::resource('cars/performance', 'CarsPerController');
    Route::resource('cars/performance/parts', 'CarsPerPartsController');
    Route::resource('cars.performance/parts', 'CarsPerPartsController');
    Route::resource('parts', 'PartsController');
    Route::resource('parts/performance', 'PartsPerController');
    etc...
});
Run Code Online (Sandbox Code Playgroud)

或者是否有一些技巧我缺少创建动态控制器,例如只有3(CarController,PartsController,PerformanceController)和处理代码中的不同路由?

rest routes controllers laravel

4
推荐指数
1
解决办法
3599
查看次数

使用控制器下载 Laravel Excel

所以我创建了一个 PHP 控制器来处理由 JS 发布的导出数据。问题是我可以看到它在控制台中创建了一些东西,但文件下载从未开始。我尝试使用 ->store (laravel excel) 并将其保存在导出文件夹中,但当我尝试使用时再次

return \Response::download($result);
Run Code Online (Sandbox Code Playgroud)

它仍然不会开始下载。我遇到的问题只是开始下载。

角度控制器

$scope.exportMatrix = function () {
    var postData = {list: $scope.list, matrix: $scope.matrix};
    $http({
        method: 'POST',
        url: '/export',
        dataType: 'obj',
        data: postData,
        headers: {'Content-Type': 'application/x-www-form-urlencoded'}
    }).success(function (data) {
        console.log(data);
    }).error(function (data) {
        console.log("failed");
    });
}
Run Code Online (Sandbox Code Playgroud)

路线

Route::post('/export', 'ExportController@export');
Run Code Online (Sandbox Code Playgroud)

PHP控制器

<?php namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App;
use Excel;
use Response;
class ExportController extends Controller {

public function export()
{

    $excel = App::make('excel');

    Excel::create('Test', …
Run Code Online (Sandbox Code Playgroud)

php export laravel angularjs laravel-excel

3
推荐指数
1
解决办法
1万
查看次数