我正在处理一个插件的后端,在让它工作时遇到了一些问题。我创建了所有插件所需的文件、模型、注册等,但每当我试图按照示例http://alomicuba.dev/backend/alomicuba/balancerecharge
访问后端URL时,我都会收到404错误,我不知道自己做错了什么。这是/plugins/alomicuba/balancerecharge/controllers/balancerecharge/BalanceRecharge.php
文件上的代码:
<?php namespace Alomicuba'BalanceRecharge'Controllers;
use Flash;
use BackendMenu;
use Backend'Classes'Controller;
use System'Classes'SettingsManager;
use Alomicuba'RechargeBalance'Models'Settings as BalanceRechargeSettings;
class BalanceRecharge extends Controller
{
public $implement = [
'Backend.Behaviors.FormController',
'Backend.Behaviors.ListController'
];
public $formConfig = 'config_form.yaml';
public $listConfig = 'config_list.yaml';
public $requiredPermissions = ['balancerecharge.*'];
public $bodyClass = 'compact-container';
public function __construct()
{
parent::__construct();
BackendMenu::setContext('Alomicuba.BalanceRecharge', 'balancerecharge');
SettingsManager::setContext('Alomicuba.BalanceRecharge', 'settings');
}
}
这是Plugin.php
代码:
class Plugin extends PluginBase {
/**
* Returns information about this plugin.
*
* @return array
*/
public function pluginDetails()
{
return [
'name' => 'Balance Recharge',
'description' => 'Plugin that allows users to recharge theirs balance through the PayPal payment gateway',
'author' => 'Dynamo Technology Solutions',
'icon' => 'icon-credit-card'
];
}
public function registerNavigation()
{
return [
'bradmin' => [
'label' => 'Balance Recharge',
'url' => Backend::url('alomicuba/balancerecharge/balancerecharge'),
'icon' => 'icon-credit-card',
'permissions' => ['brecharge.*'],
'order' => 500,
'sideMenu' => [
'brecharge' => [
'label' => 'Balance Recharge',
'icon' => 'icon-credit-card',
'url' => Backend::url('alomicuba/balancerecharge/balancerecharge'),
'permissions' => ['brecharge.*'],
],
]
]
];
}
public function registerSettings()
{
return [
'settings' => [
'label' => 'Balance Recharge PayPal Configuration',
'description' => 'Manage the settings for Balance Recharge.',
'category' => 'AloMiCuba',
'icon' => 'icon-cog',
'class' => 'Alomicuba'BalanceRecharge'Models'Settings',
'order' => 100
]
];
}
public function boot()
{
'App::register('Barryvdh'Omnipay'ServiceProvider');
'Illuminate'Foundation'AliasLoader::getInstance()->alias('Omnipay', 'Barryvdh'Omnipay'Facade');
UserModel::extend(function($model){
$model->hasMany['payment'] = ['Alomicuba'BalanceRecharge'Models'Payment'];
});
}
public function registerComponents()
{
return [
'Alomicuba'BalanceRecharge'Components'Payment' => 'Payment'
];
}
}
我在这里错过了什么?
在十月,控制器的CMS URL类似
domain-name/backend/author-name/plugin-name/controller-name
所以在你的情况下,你可以使用
alomicuba.dev/backend/alomicuba/balancerecharge/balancerecharge