Tag: pug

如何在MongoDB中为NodeJS Express应用程序存储站点configuration?

我有一个使用MongoDB和Jade模板语言在NodeJS 0.8.8上运行的Expressjs应用程序,我希望允许用户configuration许多站点范围的显示选项,例如页面标题,徽标图像等。 我如何将这些configuration选项存储在mongoDB数据库中,以便我可以在应用程序启动时读取它们,在应用程序运行时操作它们,并将它们显示在jade模板中? 这是我的一般应用程序设置: var app = module.exports = express(); global.app = app; var DB = require('./accessDB'); var conn = 'mongodb://localhost/dbname'; var db; // App Config app.configure(function(){ … }); db = new DB.startup(conn); //env specific config app.configure('development', function(){ app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); }); // etc // use date manipulation tool moment app.locals.moment = […]

Node.js源代码中的JADE换行符?

我想知道,为什么我没有看到我的源代码中的任何linebreak如果我parsing我的玉模板。 它看起来像这样: !!! 5 html head title= title link(rel='stylesheet', href='/stylesheets/css.css') link(rel='stylesheet', href='/stylesheets/blitzer/jquery-ui-1.8.10.custom.css') link(rel='stylesheet', href='/stylesheets/table_jui.css') script(type="text/javascript", src="/javascripts/jquery.min.js") script(type="text/javascript", src="/javascripts/jquery-ui.min.js") script(type="text/javascript", src="/javascripts/jquery.jwNotify.js") script(type="text/javascript", src="/javascripts/jquery.dataTables.min.js") script(type="text/javascript", src="/javascripts/js.js") body!= body 现在我的源代码看起来像这样: <!DOCTYPE html><html><head><title>Express v2</title><link rel="stylesheet" href="/stylesheets/css.css"><link rel="stylesheet" href="/stylesheets/blitzer/jquery-ui-1.8.10.custom.css"><link rel="stylesheet" href="/stylesheets/table_jui.css"><script type="text/javascript" src="/javascripts/jquery.min.js"></script><script type="text/javascript" src="/javascripts/jquery-ui.min.js"></script><script type="text/javascript" src="/javascripts/jquery.jwNotify.js"></script><script type="text/javascript" src="/javascripts/jquery.dataTables.min.js"></script><script type="text/javascript" src="/javascripts/js.js"></script></head><body></body></html> 在源代码中查看换行符可以很好地进行debugging吗? 任何人都有一个思想,我怎么可以pipe理这个? Thx的信息!

错误:找不到模块'jade〜'

Im新的节点js。 我用化合物Js来创build一个crud操作。 该应用程序工作正常,直到我试图提醒一个值,之后,我得到的错误 500 Error: Cannot find module 'jade~' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:362:17) at require (module.js:378:17) 如何解决这个问题 我的索引 #tabs ul li a(href='#tabs-1') New Leave li a(href='#tabs-2') Index of Leave #tabs-1 .page-header h1 New employee – var form = formFor(employee, {action: pathTo.employees(), method: 'POST', id: "employee_form", class: 'form-horizontal'}) != form.begin() != […]

呈现与布局(没有expression)的玉模板

在快速渲染jade模板时,您可以使用'view options', { layout: true }来configuration应用程序,渲染的模板将自动插入到布局模板的body中。 我试图实现等效的行为从node.js渲染文件,但没有明确的框架(我只是build立一个更大的pipe道一部分的静态文件)。 似乎有两个select: 加载主模板和布局,转换为函数,首先渲染模板,然后将结果传递给布局函数 使用标准的模板inheritance和块结构,但是我明确地使用命名块 这些是唯一的select吗(这很公平,还是很棒的),还是我错过了一些诀窍? 编辑 如果有人感兴趣,下面是第一个选项的粗略剪辑: // Load jade var jade = require('jade'); // Load actual template text var layout = fs.readFileSync('layout-path', 'utf8') tpl = fs.readFileSync('tpl-path', 'utf8'); // Compile template rendering function layout = jade.compile(layout, { pretty: true, filename: 'layout-path' }); tpl = jade.compile(tpl, { pretty: true, filename: […]

如何使用nodejs / express来上传和读取文件

有各种各样的post,但我仍然没有得到它。 我想上传* .csv并阅读并处理其内容。 我的玉文件就是这个 //views/import.jade extends layout block content h1= title form(action="/import", method="post", enctype="multipart/form-data") input(type="file", name="ufile") input(type="submit", name="Upload") – 我改变了代码,但是req.files是未定义的 //routes/index.js /* import page. */ router.get('/blah', function(req, res, next) { res.render('import', { title: 'Import Data' }); }); router.post('/import', function(req, res) { console.log(req.files); }); module.exports = router;

如何在Jade中每三次迭代插入新的tr

我是node.js和Jade的新手。 我search的解决scheme没有成功(也许我在谷歌提出错误的问题,我不知道)。 我想在Jade的each循环中创build表行。 事情是,每第三个td我想插入新的tr 。 通常这很简单,但是用Jade我根本做不到。 我的Jade文件: table thead tr td Header tbody each item, i in items if (i % 3 === 0) tr td a(href="#{baseUrl}/admin.html?id=#{item.id}") 我知道我的if语句有什么问题。 我尝试了许多configuration没有运气。 我相信这将是相当容易的问题。 预先感谢您的帮助! 编辑 基于@Laurent佩林答案我修改了一点我的代码。 现在它创buildtr ,然后是3 td ,然后是新tr所以它更接近一点… 新的玉 if (i % 3 === 0) tr td: a(href="#{baseUrl}/admin.html?id=#{item.id}") dsdsd #{i} 生成的HTML <tr></tr> <td><a href="…">0</a></td> <td><a href="…">1</a></td> […]

Uexpected token'tag'jade node.js

我得到: Unexpected token 'tag' expected 'text', 'code', ':', 'newline' or 'eos' 由于这个代码: label(for="polaziste")Polaziste 在 #main form(action="/raspored" method=post) label(for="polaziste")Polaziste input(type="list" id="polaziste") datalist#polaziste for pol,i in popis option(value = pol) 为什么? 🙂

用Jade渲染的HTML值中多余的空格

每当我用Jade写HTML时,我都会在每个元素的值后面添加额外的空格。 例如,我将在我的Jade模板中有这样一行: label(for="keyword") Keyword 呈现时,源代码将如下所示: <label for="keyword_1">Keyword </label> 遇到一些额外的空白与我的CSS混乱的问题。 另外,它只是看起来不整齐:) 任何人都知道我可以防止它被插入?

如何在Webstorm中设置Jade文件监视器?

我在WebStorm中以下列方式设置了一个Jade文件监视器。 但是它不会产生任何HTML文件。 WebStorm 9.0.3如何将Jade文件转换为HTML文件?

更好的方式在ucfirst在Jade模板?

有没有更好的方法来大写string的第一个字符在Jade比这个? for list in project.lists – list.name = list.name.charAt(0).toUpperCase() + list.name.slice(1); li #{list.name} 每次我想要大写一个variables都这样做是丑陋的,有没有什么方法在Jade中,我可以定义一个自定义函数,我可以在每个模板中使用: for list in project.lists li #{ucfirst(list.name)} 提前致谢!