Croogo - меню администратора показывает ошибку на живом сервере

Я работаю над Croogo, и я достиг всего этого. Но, к сожалению, эффект переключения меню администратора не работает при загрузке на живой сервер. При проверке консоли, показывает эту ошибку в admin.js в строке 37. Я искал и нашел следующий код решение вопроса:

var $sidebar = $('#sidebar-menu');
var $topLevelMenus = $('#sidebar-menu > li > .hasChild');

// no item is current, fallback to current controller index
var $current = $('.sidebar .current');
if ($current.length == 0) {
    var selector = _.template(
        "a.sidebar-item[href^='<%= basePath %>admin/ +
        <%= params.plugin %>/ +
        <%= params.controller %>']:first"
    );
    if ($(selector(Croogo)).addClass('current').length == 0) {
        var selector = _.template(
            'a.sidebar-item[href="<%= basePath %>admin/' +
            '<%= params.plugin %>"]'
        );
        $(selector(Croogo)).addClass('current');
    }
}

Сообщение об ошибке: b> Примечание (8): использование неопределенной константы basePath - предполагаемый "basePath" [APP / Plugin / Croogo / webroot / js / admin.js, строка 37

Это мой первый проект с использованием Croogo. Может кто-нибудь помочь мне с этим вопросом. Спасибо заранее.

2 ответа

Интерпретатор php пытается проанализировать часть файла JavaScript как PHP. Попробуйте отключить php короткие теги.

Это все потому, что конфигурация PHP. В некоторых конфигурациях ошибки Notice не нарушают выполнение кода. Но в некоторых, в основном в конфигурациях Linux, любая ошибка прерывает выполнение. Одним из случаев является то, что существует некоторая оболочка для файлов JS, которая добавляет сообщение об ошибке в скрипт и нарушает его синтаксис. В другом случае сообщение уведомления отправляется до того, как установлен заголовок, а остальная часть кода не может быть выполнена должным образом.

Большинство из этих случаев можно исправить, добавив эту строку в первый выполненный скрипт:

error_reporting (0);

вот документация php: http://www.php.net/manual/en/function.error-reporting.php

или в этом конкретном случае CakePHP, в вашем /app/Config/core.php вы можете установить

Configure::write('debug', 0);

Это должно помочь.

Другие вопросы по тегам