【问题标题】:How to create standalone custome page?如何创建独立的自定义页面?
【发布时间】:2019-02-01 11:58:14
【问题描述】:

我正在寻找一种创建单页模型/独立单页的方法。

这就像“关于我们”、“主页”、“我们的团队”等的自定义单页。

它们是带有后端选项的单页。

有人知道吗?

【问题讨论】:

    标签: keystonejs


    【解决方案1】:

    所以你需要创建所有需要的文件类型,比如路由 JS 文件、模板文件,将有关该文件的信息添加到 routes/index.js

    示例: 创建文件 routes/views/aboutUs.js :

    var keystone = require("keystone");
    
    exports = module.exports = function(req, res) {
      var view = new keystone.View(req, res);
      var locals = res.locals;
    
      // locals.section is used to set the currently selected
      // item in the header navigation.
      locals.section = "about-us";
      locals.title = "About our company";
    
      // Render the view
      view.render("aboutUs");
    };
    

    创建模板文件 templates/aboutUs.pug :

    block content
      p Our company is super cool. We based it here long time ago
    

    使用正确的语法和 css 将所有静态内容放入模板中

    最后添加到 routes/index.js 文件:

    app.get("/aboutUs", routes.views.aboutUs);
    

    如果你需要控制用户对页面的访问也添加这样的字符串

    app.all("/aboutUs*", middleware.requireUser);
    

    别忘了重启应用来查看变化

    【讨论】:

      【解决方案2】:

      这显然不是 OP 所要求的。他们询问是否有一种方法可以为主页、关于我们等创建单个 ADMIN UI 可编辑页面。我的回答是,我不相信 KeystoneJS 是可能的。这很烦人,因为我有客户想要这样,否则 Keystone 将是完美的。似乎唯一的方法是创建一个列表,如果不存在则自动创建一个记录,并在列表上设置“nocreat”和“novelette”。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-02-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-20
        • 1970-01-01
        相关资源
        最近更新 更多