我想向 Laravel 添加自定义变形。在 Rails 中,这并不难做到,但我似乎无法在 Laravel 中找到如何做到这一点的答案。
如何将我自己的变形添加到 Laravel?
我想向 Laravel 添加自定义变形。在 Rails 中,这并不难做到,但我似乎无法在 Laravel 中找到如何做到这一点的答案。
如何将我自己的变形添加到 Laravel?
大概在做:
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',
这不再适用于当前的 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']]);
}
}
还需要将提供程序文件夹添加到您的作曲家自动加载中。
"autoload": {
"classmap": [
...
"app/providers"
]
},