【问题标题】:How Do you Set up Mandrill to work with KeystoneJS你如何设置 Mandrill 以使用 KeystoneJS
【发布时间】:2015-02-27 01:24:29
【问题描述】:

对于 Node 和 Keystone 的新手,在我的 keystone JS 应用程序中配置 Mandrill 的文档不足以让我让电子邮件表单正常工作(这很可能是由于我的经验有限)。

在我当前的 keystone.js 文件中,我包含以下代码。我将MANDRILL_API_KEY 添加到 .env 文件中。作为参考,我创建的应用程序只是生成器使用 Handlebars 作为模板引擎创建的样板 Keystone 应用程序。我目前的努力没有导致电子邮件表单按预期发送电子邮件。我正在努力解决这个问题,因为网络上似乎没有太多关于如何设置的详细信息。

Keystone 的文档表明您可以执行以下操作,并且默认设置为 .env 变量集。我还尝试在设置环境变量的情况下包含这两行代码,但 Mandrill 仍然无法正常工作。我将非常感谢有人可以提供帮助我进行此配置的任何帮助。谢谢。

keystone.set('mandrill api key', 'your-key');
keystone.set('mandrill username', 'your-username');

当前 keystone.js 文件

keystone.init({
'name': 'myApp',
'brand': 'My App',

'less': 'public',
'static': 'public',
'favicon': 'public/favicon.ico',
'views': 'templates/views',
'view engine': 'hbs',

'custom engine': handlebars.create({
    layoutsDir: 'templates/views/layouts',
    partialsDir: 'templates/views/partials',
    defaultLayout: 'default',
    helpers: new require('./templates/views/helpers')(),
    extname: '.hbs'
 }).engine,

'emails': 'templates/emails',

'auto update': true,
'session': true,
'auth': true,
'user model': 'User',
'cookie secret': 'J/x|3n&#SHG)OS1"pOTPk0/TA;[*[2HMK(vUX]HrfEym&`P]CX>oP50eWeD{Cz2e',
'mandrill api key': process.env.MANDRILL_API_KEY
});  

【问题讨论】:

    标签: node.js express mandrill keystonejs


    【解决方案1】:

    在您的 .env 文件中(如果 keystone.js 旁边的项目文件夹中不存在该文件,则创建一个),您需要放置:

    # 用于发送电子邮件的 MANDRILL 键
    MANDRILL_API_KEY=
    MANDRILL_USERNAME=

    【讨论】:

    • 我已经设置了 .env 文件并且之前已经设置好了。我似乎在初始化它或使用 keystone.js 文件设置 Mandrill 信息时遇到问题。您能否就我的 keystone.js 文件是否走在正确的轨道上或者我需要做一些不同的事情提供任何其他想法。
    • 只需将它们设置为环境变量即可。编辑您的/etc/environment 或在命令行上提供MANDRILL_API_KEY ='a' MANDRILL_USERNAME ='b' node keystone.js。在您的 keystone.js 文件 console.log(process.env.MANDRILL_USERNAME) 中确认此回显。只要在执行keystone.start 之前设置这些,就可以了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 2013-11-25
    • 2013-05-12
    • 2015-09-14
    • 2013-08-20
    相关资源
    最近更新 更多