我们有非常具体的需求.我们想为活动组织者创建一个通用的(基于
Java的)注册系统.因此,每个活动组织者都可以在我们的应用程序上定义自定义表单,然后我们从该用户收集该特定事件的数据.
现在输入字段可以从事件更改为事件,所以我想使用一些开箱即用的云解决方案.我想到的一个显而易见的事情就是使用谷歌表格.因此,对于每个活动,如果我们可以通过编程方式创建Google表单并获得以下两项内容:
1)嵌入该表单的链接
2)访问相应的数据,保留Google电子表格
我们可以使用嵌入链接在“活动”页面上向用户显示“注册”表单.我们可以访问Google电子表格来访问用户填写注册表单的数据.
但是当我搜索它时,我无法明确地实现这一目标.有一些Google Documents List API,您可以通过该API以编程方式创建Google文档,但我无法弄清楚如何通过此API满足我们的需求.
如果有人可以在这方面指导我们,那将会有很大的帮助.或者建议我们任何备用云解决方案.
更新::
对于与电子表格链接的表单,Google似乎根本不提供API. http://goo.gl/ia8rk如果我们很幸运,他们可能会在未来的版本中加入.
那么任何其他基于云的API可以方便地解决这个问题吗?
解决方法
如果我理解正确,您有Google表格,并且想要一种自动生成表单的方法.生成的表单应将其响应链接回该电子表格.那是对的吗?
我不知道用Java做这件事的方法(如果有可用的API,我不这么认为),但这可以通过Google Scripts轻松完成.这是在Google电子表格的脚本编辑器中构建的.
这是一个例子:
function onOpen() { // read the docs to add to the toolbar } function getColumnHeaders() { // this grabs the headers of your sheet var headers = SpreadsheetApp .getActiveSheet() .getRange(1,1,SpreadsheetApp.getActiveSheet().getLastColumn()) .getValues()[0]; // this will appear in your root directory var newForm = FormApp.create('NEW FORM NAME'); newForm.setDestination(FormApp.DestinationType.SPREADSHEET,SpreadsheetApp.getActiveSpreadsheet().getId()); headers.forEach(function(each) { newForm.addTextItem().setTitle(each); }); }
文档可以在这里找到:https://developers.google.com/apps-script/reference/forms/