Найти вложенные папки внутри / Представления в Vapor - PullRequest
0 голосов
/ 13 октября 2018

Я пытаюсь организовать свои представления Leaf внутри каталога Views, но не могу создать вложенные каталоги внутри Views.У меня есть такой заголовок

<header>
    <nav>
        <ul>
            <li><a href="/test">Test</a></li>
        </ul>
    </nav>
</header>

На самом деле /test содержится в Views/TestFolder, потому что я, возможно, думал, что он рекурсивно искал в папке Views, но это не так.Если я пытаюсь получить доступ к странице test, я получаю следующую ошибку (которая, я думаю, вполне логична):

{
  "error": true,
  "reason": "No file was found at path: /Users/eirik/Documents/Utvikling/Jobb/AaseSoftware/Resources/Views/test.leaf"
}

Я также не знаю, как мне определить маршрут для этого в routes.swift,Прямо сейчас я просто делаю это:

router.get("/test") { req -> Future<View> in
    return try req.view().render("test")
}

, но я думаю, он ищет только файл test.leaf непосредственно внутри Views.Как я могу поместить файлы Leaf во вложенные папки внутри Views?

1 Ответ

0 голосов
/ 13 октября 2018

req.view () всегда указывает на папку по умолчанию.Если вы перейдете к классу LeafProvider, вы увидите настройку по умолчанию, как показано ниже.

viewsDir: dir.workDir + "Resources/Views"

Для вашего случая вам нужно выполнить рендеринг с правильного пути render("TestFolder/test").Смотрите код ниже.

 router.get("/test") { req -> Future<View> in
        return try req.view().render("TestFolder/test")
    }
...