>  기사  >  백엔드 개발  >  phalcon에서 Volt 엔진이 작동하지 않습니다.

phalcon에서 Volt 엔진이 작동하지 않습니다.

WBOY
WBOY원래의
2016-08-25 10:37:131510검색

생성된 다중 모듈 프로젝트에서 volt 엔진이 작동하지 않고, js 및 css 로딩이 응답하지 않고, 부분도 작동하지 않으며, volt 엔진이 성공적으로 등록되지 않았거나 뷰가 출력되지 않는 것 같습니다. 다른 이유 때문인가요?

ps: 하지만 자체 엔진이 함께 제공됩니다. 접미사가 .phtml인 형식의 파일은 설명서에 따라 js, css 및 부분 파일을 가져올 수 있습니다. 위 내용을 바탕으로 접미사를 .volt 형식으로 변경한 후 작동하려면 또 무엇을 변경해야 합니까?

디렉토리 구조

phalcon에서 Volt 엔진이 작동하지 않습니다.

다음은 프로젝트 생성 시 자동으로 생성되는 config/services.php의 코드 일부입니다

<code>$di->setShared('view', function () use ($config) {

    $view = new View();

    $view->setViewsDir($config->application->viewsDir);

    $view->registerEngines(array(
        '.volt' => function ($view, $di) use ($config) {

            $volt = new VoltEngine($view, $di);

            $volt->setOptions(array(
                'compiledPath' => $config->application->cacheDir,
                'compiledSeparator' => '_'
            ));

            return $volt;
        },
        '.phtml' => 'Phalcon\Mvc\View\Engine\Php'
       // '.volt' => 'Phalcon\Mvc\View\Engine\Php'
    ));

    return $view;
});</code>

모듈 아래의 Module.php는 여전히 프로젝트 생성 당시와 동일하며 변경되지 않았습니다!

views/index.volt에서

부분 로드 중

<code>{{ partial("partials/header") }}
{{ partial("partials/main") }}
{{ partial("partials/footer") }}</code>

js 로드

<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>

답글 내용:

생성된 다중 모듈 프로젝트에서 volt 엔진이 작동하지 않고, js 및 css 로딩이 응답하지 않고, 부분도 작동하지 않으며, volt 엔진이 성공적으로 등록되지 않았거나 뷰가 출력되지 않는 것 같습니다. 다른 이유 때문인가요?

ps: 하지만 자체 엔진이 함께 제공됩니다. 접미사가 .phtml인 형식의 파일은 설명서에 따라 js, css 및 부분 파일을 가져올 수 있습니다. 위 내용을 바탕으로 접미사를 .volt 형식으로 변경한 후 작동하려면 또 무엇을 변경해야 합니까?

디렉토리 구조

phalcon에서 Volt 엔진이 작동하지 않습니다.

다음은 프로젝트 생성 시 자동으로 생성되는 config/services.php의 코드 일부입니다

<code>$di->setShared('view', function () use ($config) {

    $view = new View();

    $view->setViewsDir($config->application->viewsDir);

    $view->registerEngines(array(
        '.volt' => function ($view, $di) use ($config) {

            $volt = new VoltEngine($view, $di);

            $volt->setOptions(array(
                'compiledPath' => $config->application->cacheDir,
                'compiledSeparator' => '_'
            ));

            return $volt;
        },
        '.phtml' => 'Phalcon\Mvc\View\Engine\Php'
       // '.volt' => 'Phalcon\Mvc\View\Engine\Php'
    ));

    return $view;
});</code>

모듈 아래의 Module.php는 여전히 프로젝트 생성 당시와 동일하며 변경되지 않았습니다!

views/index.volt에서

부분 로드 중

<code>{{ partial("partials/header") }}
{{ partial("partials/main") }}
{{ partial("partials/footer") }}</code>

js 로드

<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>

DI에 volt 템플릿 등록을 위한 코드 부분 게시
JS, CSS 로딩을 위한 코드 부분 게시
partial 사용을 위한 코드 부분 게시
코드 게시! 코드를 게시하세요! 코드를 게시하세요! 세 가지 이야기를 다시 해보자! 코드를 게시하지 않고 코드 관련 질문을 올리는 것은 훌리건입니다

<code>$di->set('view', function () use ($config) {
    $view = new View();
    $view->setViewsDir(APP_PATH . $config->application->layouts_dir);
    $view->registerEngines(
        array(
            '.volt'  => function ($view, $di) use ($config) {
                $volt = new VoltExtension($view, $di);
                $volt->setOptions(
                    array(
                        'compiledPath'      => APP_PATH . $config->application->cache_dir,
                        'compileAlways'     => $config->application->debug,
                        'compiledSeparator' => '_',
                        'layoutDir'         => $config->application->layouts_dir,
                    ));
                if (!empty($config->volt->extensions)) {
                    foreach ($config->volt->extensions as $extension_class_name) {
                        $di->get('volt.extension')->register($volt, new $extension_class_name($di));
                    }
                }
                return $volt;
            },
            '.phtml' => 'Phalcon\Mvc\View\Engine\Php'
            ......
        ));
    return $view;
}, true);</code>

디렉토리 구조

phalcon에서 Volt 엔진이 작동하지 않습니다.

다음은 프로젝트 생성 시 자동으로 생성되는 config/services.php의 코드 일부입니다

<code>$di->setShared('view', function () use ($config) {

    $view = new View();

    $view->setViewsDir($config->application->viewsDir);

    $view->registerEngines(array(
        '.volt' => function ($view, $di) use ($config) {

            $volt = new VoltEngine($view, $di);

            $volt->setOptions(array(
                'compiledPath' => $config->application->cacheDir,
                'compiledSeparator' => '_'
            ));

            return $volt;
        },
        '.phtml' => 'Phalcon\Mvc\View\Engine\Php'
       // '.volt' => 'Phalcon\Mvc\View\Engine\Php'
    ));

    return $view;
});</code>

모듈 아래의 Module.php는 여전히 프로젝트 생성 당시와 동일하며 변경되지 않았습니다!

views/index.volt에서

부분 로드 중

<code>{{ partial("partials/header") }}
{{ partial("partials/main") }}
{{ partial("partials/footer") }}</code>

js 로드

<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.