";找不到页面“;OctoberCMS的第一个插件


"Page not found" first plugin for OctoberCMS

我正在处理一个插件的后端,在让它工作时遇到了一些问题。我创建了所有插件所需的文件、模型、注册等,但每当我试图按照示例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