撇号 - 在表单提交小部件中设置数据
apostrophe - setting data in forms-submit-widgets
我正在尝试制作一个联系表格供人们注册参加活动 — 但问题是,每次有人请求时,都需要从 Google 日历中填写注册表中的日期字段页。
所以在 trainings-forms-submit-widgets
我有:
module.exports = {
construct: function(self, options) {
self.pageBeforeSend = function(req) {
[all the code needed to get the info from the calendar]
}
}
}
现在,我在任何地方都找不到它 - 如何用我得到的数据填充 trainings-forms
中的数据字段?我相信构造我需要以某种方式操纵 self
对象,但我找不到关于它的文档。
首先,您的 pageBeforeSend
处理程序必须接受回调,并且在实际准备好之前不得调用该回调。
其次,它必须将信息添加到 req.data
的 属性,以便您的页面模板可以看到它:
self.pageBeforeSend = function(req, callback) {
// Let's use the request module to fetch a URL
return request('http://some/api/somewhere', function(err, res, body) {
if (err || response.statusCode >= 400) {
return callback(err || response.statusCode);
}
// I am guessing how your API works here
req.data.registerDate = body.registerDate;
return callback(null);
});
};
其次,我不知道你的联系表是如何工作的,因为你没有提到。但是,如果您只是简单地输出自己的 HTML 表单,您现在可以轻松地将此数据插入您的页面模板中:
<form method="POST" action="/something">
<input name="date" value="{{ data.registerDate }}" />
</form>
如果您正在做其他事情,例如使用我们的 apostrophe-pieces-submit-widgets 模块来构建这些表单,请准确说明您在做什么,我可以为您提供有关如何填充该字段的更多信息。
我正在尝试制作一个联系表格供人们注册参加活动 — 但问题是,每次有人请求时,都需要从 Google 日历中填写注册表中的日期字段页。
所以在 trainings-forms-submit-widgets
我有:
module.exports = {
construct: function(self, options) {
self.pageBeforeSend = function(req) {
[all the code needed to get the info from the calendar]
}
}
}
现在,我在任何地方都找不到它 - 如何用我得到的数据填充 trainings-forms
中的数据字段?我相信构造我需要以某种方式操纵 self
对象,但我找不到关于它的文档。
首先,您的 pageBeforeSend
处理程序必须接受回调,并且在实际准备好之前不得调用该回调。
其次,它必须将信息添加到 req.data
的 属性,以便您的页面模板可以看到它:
self.pageBeforeSend = function(req, callback) {
// Let's use the request module to fetch a URL
return request('http://some/api/somewhere', function(err, res, body) {
if (err || response.statusCode >= 400) {
return callback(err || response.statusCode);
}
// I am guessing how your API works here
req.data.registerDate = body.registerDate;
return callback(null);
});
};
其次,我不知道你的联系表是如何工作的,因为你没有提到。但是,如果您只是简单地输出自己的 HTML 表单,您现在可以轻松地将此数据插入您的页面模板中:
<form method="POST" action="/something">
<input name="date" value="{{ data.registerDate }}" />
</form>
如果您正在做其他事情,例如使用我们的 apostrophe-pieces-submit-widgets 模块来构建这些表单,请准确说明您在做什么,我可以为您提供有关如何填充该字段的更多信息。