Q:

ejs include doesn't work with subfolders

I am using express and ejs to build a website:
"dependencies": {
 "ejs": "^2.5.2",
 "express": "^4.14.0",

in my app.js I have defined ejs as template engine and the root of views:
app.set('view engine', 'ejs'); // set view engine
app.set('views', 'app/views'); // set custom root for view engine

I then created my index.ejs file in which I included a partial from a subdirectory:
index.ejs
  <head><% include ./partials/template/head %></head>

folder structure:
- views
  index.ejs
-- partials
-- -- template
      head.ejs

When a start the server, index is loaded without errors but without the head section.
If I change the include (pointing to a wrong location) the server fails to start highlighting the problem, so ejs is able to locate the head.ejs.
if I move head.ejs in the views directory the head is correctly loaded in the index.ejs.
So... I am a bit puzzled, it seems that in the subdirectory the file read but not loaded into the include.
After searching for around I tried using express-partials but it has not helped much.
Any clue?
Cheers, Giovanni

A:

jut change your include statement like this
<%- include("./partials/template/head.ejs") %>

this worked for me.

