Heim > Backend-Entwicklung > PHP-Tutorial > Der Volt-Motor funktioniert im Phalcon nicht

Der Volt-Motor funktioniert im Phalcon nicht

WBOY
Freigeben: 2016-08-25 10:37:13
Original
1549 Leute haben es durchsucht

Im generierten Multi-Modul-Projekt funktioniert die Volt-Engine nicht, das Laden von JS und CSS reagiert nicht, Partials funktionieren nicht und die Ansicht kann nicht ausgegeben werden. Es scheint, dass die Volt-Engine nicht erfolgreich registriert wurde hat es andere Gründe?

ps: Aber es kommt mit einem eigenen Motor. Dateien im Format mit der Endung .phtml können gemäß Handbuch JS-, CSS- und Partials-Dateien importieren. Was muss auf der Grundlage des oben Gesagten nach der Änderung des Suffixes in das .volt-Format noch geändert werden, damit es funktioniert?

Verzeichnisstruktur

Der Volt-Motor funktioniert im Phalcon nicht

Das Folgende ist Teil des Codes in config/services.php, der beim Generieren des Projekts automatisch generiert wird

<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>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Module.php unter dem Modul ist immer noch dasselbe wie bei der Projektgenerierung und hat sich nicht geändert!

In views/index.volt

Teiltöne werden geladen

<code>{{ partial("partials/header") }}
{{ partial("partials/main") }}
{{ partial("partials/footer") }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

js laden

<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Antwortinhalt:

Im generierten Multi-Modul-Projekt funktioniert die Volt-Engine nicht, das Laden von JS und CSS reagiert nicht, Partials funktionieren nicht und die Ansicht kann nicht ausgegeben werden. Es scheint, dass die Volt-Engine nicht erfolgreich registriert wurde hat es andere Gründe?

ps: Aber es kommt mit einem eigenen Motor. Dateien im Format mit der Endung .phtml können gemäß Handbuch JS-, CSS- und Partials-Dateien importieren. Was muss auf der Grundlage des oben Gesagten nach der Änderung des Suffixes in das .volt-Format noch geändert werden, damit es funktioniert?

Verzeichnisstruktur

Der Volt-Motor funktioniert im Phalcon nicht

Das Folgende ist Teil des Codes in config/services.php, der beim Generieren des Projekts automatisch generiert wird

<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>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Module.php unter dem Modul ist immer noch das gleiche wie bei der Projektgenerierung und hat sich nicht geändert!

In views/index.volt

Teiltöne werden geladen

<code>{{ partial("partials/header") }}
{{ partial("partials/main") }}
{{ partial("partials/footer") }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

js laden

<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Veröffentlichen Sie den Codeteil für die Registrierung Ihrer Volt-Vorlage in DI
Veröffentlichen Sie den Codeteil für das Laden von JS und CSS
Veröffentlichen Sie den Codeteil für die teilweise Verwendung
Veröffentlichen Sie den Code! Poste den Code! Poste den Code! Reden wir noch einmal über drei! Codebezogene Fragen zu stellen, ohne den Code zu veröffentlichen, ist ein Rowdy

<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>
Nach dem Login kopieren

Verzeichnisstruktur

Der Volt-Motor funktioniert im Phalcon nicht

Das Folgende ist Teil des Codes in config/services.php, der beim Generieren des Projekts automatisch generiert wird

<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>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Module.php unter dem Modul ist immer noch das gleiche wie bei der Projektgenerierung und hat sich nicht geändert!

In views/index.volt

Teiltöne werden geladen

<code>{{ partial("partials/header") }}
{{ partial("partials/main") }}
{{ partial("partials/footer") }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

js laden

<code>{{ javascript_include("/js/1.11.3.jquery.min.js") }}</code>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage