我想为Laravel添加自定义变形。在Rails中,这并不难做到,但我似乎无法找到如何在Laravel中做到这一点的答案。
如何将自己的变形添加到Laravel?
答案 0 :(得分: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',
答案 1 :(得分:0)
还需要将providers文件夹添加到您的composer autoload。
"autoload": {
"classmap": [
...
"app/providers"
]
},
答案 2 :(得分:0)
这对目前的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']]);
}
}