问题标签 [locomotivejs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 使用 connect-mongo 和 mongoose 在 mongodb 中存储会话
当我尝试使用 mongodb 配置 express.js 会话存储时,我遇到了左右错误。我正在为我的框架使用机车并配置了猫鼬。
在我的 02_mongoose.js 的初始化程序目录中,我有这个。
我知道我已经连接到数据库,因为我可以将我的用户拉到我的控制器中。
}
在我的 config/all.js 中,我将此作为会话的配置
但这会引发错误。
我也尝试像 connect-mongo 文档中所说的那样做,但我也遇到了错误。( https://github.com/kcbanner/connect-mongo ) mongoose_connection 的形式: someMongooseDb.connections[0] 使用现有的猫鼬连接。(可选的)
但我得到和以前一样的错误。
我也尝试按照许多文章所说的去做。这是某人工作配置的示例(在 ExpressJS、PassportJS 和 MongoStore 中注销)
但这也会产生错误,我知道 db 键实际上是未定义的
将此连接传递到新的 MongoStore 中我做错了什么?当我启动console.log() mongoose 对象时,我无法找到有关它正在使用的连接的任何信息。我确实看到了一个基础对象,但它里面没有 db 键。我是否需要将更多选项传递给 mongoose 配置?
node.js - 如何从 Mongoose 查询中返回值
我正在做一个注册片,在将数据输入到 mongo 之前进行一些服务器端验证。我对猫鼬很陌生,并且无法将数据返回到完成所有注册过程的方法。
在我的机车控制器中,我有一个方法可以包装所有内容以启动注册过程。
在我的身份验证对象中,signUp 只是在创建新用户之前验证数据。一项验证是数据库中没有创建重复的电子邮件。
我正在尝试的一种方法是查找匹配并返回真或假的电子邮件。
如果我在数据库中传递一封电子邮件,我可以在使用 console.log() 时看到用户,但这不允许我返回任何内容,除非它是机车返回响应对象。但我需要能够继续对数据进行处理。我意识到我这样做可能完全是错误的,所以如果我的设计不好,我需要解释如何将其更改为与 node.js、express 和 locomotive 一起使用。
我已经阅读了 mongoose 的查询文档(http://mongoosejs.com/docs/queries.html)。在他们的示例中,他们使用了 console.log(),但肯定有一种方法可以使用您从其他地方的 mongoose 提取的数据,而不仅仅是在 mongoose 查询中。如果我的设计不好走这条路,建议如何改变它?或者我怎样才能返回来自猫鼬查询的数据或另一个要使用的值?
node.js - 捕获“无法查找视图”错误并提供 404
我目前通过在 routes.js 中包含这一行,将每个页面路由到我的 pagesController 中,这些页面在以前的路由中找不到:
如果找不到,我有想法让我的 PagesController 处理服务 404:
但我的想法失败了。无法捕获错误,因此仍然会提供致命错误。我应该在渲染调用中附加一个 fn 吗?有什么论据?它是如何工作的?(/简单的问题)。
node.js - 如何在机车 Js 中使用发送
如何在机车 Js 中的控制器操作中使用 send()。我认为 LCM 只提供渲染()。有人可以在这方面指导我。
node.js - 如何在 LocomotiveJS 中嵌入 ECTJS 视图
我有典型的机车JS安装。我想将 ECTJS 用于视图。我已经使用以下命令成功安装了 ECTJS:
我有以下控制器:
我在目录“/app/views/rose”中创建了以下“thorne.html.ect”文件
我在“initializers”文件夹中的“02_views.js”文件中进行了更改。文件如下:
当我跑
我收到以下错误:
如果我使用:
在玫瑰/索恩动作中,它显示没有任何问题。
有人可以指导我如何将 ECTJS 嵌入 locomotiveJS 中。
谢谢
node.js - locomotivejs 和 mongoose:将 promise 变量传递给控制器
序言:我不确定这是否是提出这个问题的最佳方式,因为我相当确定它比我提出的更笼统,并且可能有一个全球模式可以解决我的担忧。
目前,这是我正在使用的原始代码上下文中的问题。
给定一个 locomotivejs 控制器,我们称它为 Contact_Controller,其一般结构如下:
进而:
和模型:
在contact_controller 的列表操作中,我真的不想使用controller = this;
我通常更喜欢使用redirect = this.redirect.bind(this);
样式本地化绑定来处理这些情况。
this
但是,如果不创建全局变量版本this
并让 Promise 的回调与之对话,我想不出一种方法来将结果返回给控制器的对象。有没有更好的方法来返回结果变量或在此上下文中公开 contact_controller 对象?
javascript - 如何在使用 locomotive 构建的现有 Node.js 项目中向 routes.js 文件添加新 url?
如何在我的应用程序中添加一个新的 url 假设“paper/domain”?
有人可以解释我如何添加这个吗?我已阅读机车指南,但无法找出解决方案。
node.js - 使用 CORS 与 LocomotiveJs 一起休息 API。适用于本地机器,但不适用于 Amazon 或 Heroku
使用 CORS 与 LocomotiveJs 一起休息 API。适用于本地机器,但不适用于 Amazon 或 Heroku
我使用 LocomotiveJs 做了一个 REST api,现在我正在尝试在其上启用 CORS。我将以下代码添加到我的“所有”环境(config/environments/all.js)中。
它可以在我的本地机器上运行,但是当我将它部署到 Heroku 或 AWS 时,当客户端发送 OPTIONS 命令时出现 404 Http 错误。
为了隔离问题,我开发了一个简单的 Express 应用程序,代码如下:
并且此代码在部署到 Heroku 时有效!
你们对为什么它在我的本地机器上工作而在服务器上没有工作有任何意见吗?
node.js - Locomotive.js 在调用“locomotive.boot”时抛出错误
我正在尝试在我的 locomotive.js 应用程序上编写测试,从互联网上的一些示例中复制/粘贴代码。即便如此,每当我运行测试时,我都会收到一条错误消息
当我检查 locomotive.boot 预期的参数数量(使用 locomotive.boot.length)时,它显示 2 ......但在每个在线示例中(继续,谷歌它)文档似乎都说 3。有谁知道我做错了什么?
这是我的代码:
node.js - 使用ejs在机车中路由
我正在尝试 node 和一些用于 node atm 的框架,特别是机车。但是,我似乎被困在使用机车的路线上。有几个问题我找不到答案,所以这里是:
为什么机车开箱即用安装使用 index.html.ejs 作为文件名?为什么不只是 index.ejs?有什么好处?
我正在尝试将路由添加到视图:我在视图文件夹中添加的 searchName.html.ejs。为了实现这一点,我制作了一个这样的工具控制器:
我还在 routes.js 中添加了一条路线,如下所示:
但是,这不起作用(但这是文档所说的应该起作用的)。结果是 404 错误。那么我如何使这条路线工作?
假设我想创建一条到例如 anExample.html 的路线?我该怎么做?我注意到在机车的开箱即用应用程序中,您无法输入 localhost:3000/index.html 。甚至 localhost:3000/index 这对我来说似乎非常不切实际,因为有很多用户会添加他们想要访问的特定页面。那么我怎样才能使它工作呢?
PS:我在stackoverflow上解决了所有关于此的问题并搜索了网络,但我仍然无法弄清楚这一点。enter code here