这与我有posted previously的问题有关。
我有一批CSV文件,其中包含从问题跟踪器工具获取的数据集。这些我上传到谷歌驱动器,并以谷歌网站的图表和列表形式呈现。
这很合理,因为我现在要做的就是更新谷歌硬盘中的文件,网站会自动更新。
显示的图表效果很好,但我想将列表显示为HTML表格(而不是嵌入的表格)。
应用程序脚本似乎是最合理的方法。但是,为了做到这一点,我需要将包含数据的工作表的URL提供给应用程序脚本。事实证明这比我预期的要困难得多。
我尝试通过直接链接应用脚本网址(xxxxxx / exec?source = yyyy)将数据源作为参数传递,但Google网站中的应用脚本小工具不会传递参数。
我尝试在iframe中嵌入脚本URL(带参数) - 正如其他地方所建议的那样,但没有任何运气。
有人有任何建议吗?感谢。
答案 0 :(得分:2)
Google Apps脚本小工具无法在小工具设置中包含参数,而是将参数添加到指向Google网站页面的链接
private void updatesettings() {
String UserName = username.getText().toString().toLowerCase().trim();
String PhoneNumber= pno.getText().toString();
FirebaseUser user = mauth.getCurrentUser();
String uid = user.getUid();
//this is to enter all the details under the UID of currently logged in user
dbr = FirebaseDatabase.getInstance().getReference().child("Users").child(uid);
HashMap<String, String> userMap = new HashMap<String, String>();
userMap.put("name", UserName);
userMap.put("phone number", PhoneNumber);
userMap.put("status", "jdjdjjdjdjdj");
userMap.put("image", "default");
userMap.put("thumbnail", "default");
dbr.setValue(userMap).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if(task.isSuccessful()){
// Toast.makeText(UpdateUserSettings.this, "Your settings have been updated", Toast.LENGTH_LONG).show();
startActivity(new Intent(UpdateUserSettings.this, MainActivity.class));
}
else{
Toast.makeText(UpdateUserSettings.this, task.getException().getMessage(), Toast.LENGTH_LONG).show();
}
}
});
}
关于可能存在问题的相同Google Apps脚本小工具的多个实例。我认为更好的方法是制作脚本的副本,并为每个脚本制作一组不同的参数。
一步一步
添加gs代码
在这种情况下,代码会根据文件创建模板,如果网址参数https://sites.google.com/sites/mysite/mypage?par1=A&par2=B
等于Hellow World!
,该文件会显示message
,否则会显示{{ 1}}。
true
创建HTML文件并添加HTML代码
undefined
发布您的网络应用
在浏览器地址框或链接
中写下页面URL和所需参数https://sites.google.com/a/rubenrivera.mx/ejemplos/posts/1?message=true
答案 1 :(得分:1)
对于嵌入在经典google网站中的应用脚本网络应用,querystring参数效果很好。相反,如果嵌入到新的google网站中则无法正常工作,这是一个大问题,这意味着无法迁移使用querystring的经典网站,并且很快经典google网站将停止工作。