1

我想向 Laravel 添加自定义变形。在 Rails 中,这并不难做到,但我似乎无法在 Laravel 中找到如何做到这一点的答案。

如何将我自己的变形添加到 Laravel?

4

3 回答 3

2

大概在做:

Illuminate\Support\Pluralizer::$irregular['subscribe'] = 'subscribes';

加载它的最佳位置是服务提供商:

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Pluralizer;

class PluralizationServiceProvider extends ServiceProvider {

    public function register()
    {
        Pluralizer::$irregular['octopus'] = 'octopi';
    }

}

并将其加载到您的 app/config/app.php 中:

'App\Providers\PluralizationServiceProvider', 
于 2014-09-03T13:58:41.130 回答
2

这不再适用于当前的 Laravel。现在你必须写:

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Doctrine\Common\Inflector\Inflector;

class PluralizationServiceProvider extends ServiceProvider {

    public function register()
    {
        Inflector::rules('plural', ['irregular' => ['octopus' => 'octopi']]);
    }

}
于 2015-11-04T14:44:19.393 回答
0

还需要将提供程序文件夹添加到您的作曲家自动加载中。

"autoload": {
    "classmap": [
        ...
        "app/providers"
    ]
},
于 2014-10-30T14:45:24.597 回答