鉴于用户提供了他的 API 密钥,是否有办法检索用户的 AirTable 帐户中的表列表?
我确实知道有一个用于 API 查询的 URL,其中包含基本数据和表编码。此外,API 文档仅包含有关如何使用特定表的信息。
我的用例是允许用户选择他们想要使用的表。
运行我的笑话测试时遇到问题,导入 Airtable 时会出错
TypeError: Cannot read property 'bind' of undefined
> 1 | import AirtableAPI from 'airtable'
| ^
at Object.<anonymous> (node_modules/airtable/src/fetch.ts:5:80)
at Object.<anonymous> (node_modules/airtable/src/base.ts:5:1)
at Object.<anonymous> (node_modules/airtable/src/airtable.ts:1:1)
Run Code Online (Sandbox Code Playgroud) 任何人都可以在python中找到Airtable.com的API 示例.有文档,但我不知道如何开始.
请注意,它们没有客户端库.
使用 airtable api 的 filterByFormula 方法,我可以查询和选择包含一个特定项目(字符串)的记录。但是,此查询仅返回仅包含该特定字符串的记录。
在此处搜索 airtable api 公式文档:https : //support.airtable.com/hc/en-us/articles/203255215-Formula-Field-Reference 没有答案。
我拥有的:
base('Table').select({
view: 'Main View',
filterByFormula: `Column = "${myFilter}"`
}).firstPage(function(err, records) {
if (err) { console.error(err); reject( err ); }
records.forEach(function(record) {
console.log(record.get('Another Column'));
});
Run Code Online (Sandbox Code Playgroud)
同样,这将返回只有 myFilter 的记录,而不是在给定列中包含任何附加值的记录。
编辑:airtable 将这些列称为“多选”字段类型。
我试图通过在用户表中查找用户的电子邮件来查看用户是否存在,如果不存在,那么我将插入用户。
var Airtable = require('airtable');
var base = new Airtable({ apiKey: process.env.AIRTABLE_API_KEY }).base(process.env.AIRTABLE_BASE_ID);
app.post('/addUser', (req, res) => {
const { uid, displayName, email, photoURL, provider } = req.query;
base('users').find({filterByFormula: `FIND(email = '${email}')`}, function(err, record) {
if (err) res.status(400).send(err);
console.log('Retrieved', record.id);
base('users').replace([{"fields": { uid, displayName, email, photoURL, provider}}], function(err, records) {
if (err) console.log(err)//res.status(400).send(err);
else console.log(records[0])
res.status(200).send(records[0]._rawJson);
});
});
});
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
] AirtableError {
[api] error: 'NOT_FOUND',
[api] message: 'Could not find what you are looking for',
[api] statusCode: 404
[api] …Run Code Online (Sandbox Code Playgroud) 我是写公式来操纵数据的新手。我正在使用Airtable收集调查反馈,并根据提供的2个得分为每个响应分配一个类别。每个或两个分数可以是-4,-2、0、2或4。根据分数的组合,响应将进入六个类别之一。
为此,我编写了一个If / And公式(可以运行),但是我想知道是否有更简单,更简洁的方法来实现此目的:
IF(AND({Functional score}=4,{Dysfunctional score}=4),"Q",
IF(AND({Functional score}=-4,{Dysfunctional score}=-4),"Q",
IF(AND({Functional score}=2,{Dysfunctional score}=2),"Q",
IF(AND({Functional score}=-2,{Dysfunctional score}=-2),"Q",
IF(AND({Functional score}=0,{Dysfunctional score}=0),"I",
IF(AND({Functional score}=4,{Dysfunctional score}=2),"A",
IF(AND({Functional score}=4,{Dysfunctional score}=0),"A",
IF(AND({Functional score}=4,{Dysfunctional score}=-2),"A",
IF(AND({Functional score}=4,{Dysfunctional score}=-4),"P",
IF(AND({Functional score}=2,{Dysfunctional score}=4),"R",
IF(AND({Functional score}=2,{Dysfunctional score}=0),"I",
IF(AND({Functional score}=2,{Dysfunctional score}=-2),"I",
IF(AND({Functional score}=2,{Dysfunctional score}=-4),"M",
IF(AND({Functional score}=0,{Dysfunctional score}=4),"R",
IF(AND({Functional score}=0,{Dysfunctional score}=2),"I",
IF(AND({Functional score}=0,{Dysfunctional score}=-2),"I",
IF(AND({Functional score}=0,{Dysfunctional score}=-4),"M",
IF(AND({Functional score}=-2,{Dysfunctional score}=4),"R",
IF(AND({Functional score}=-2,{Dysfunctional score}=2),"I",
IF(AND({Functional score}=-2,{Dysfunctional score}=0),"I",
IF(AND({Functional score}=-4,{Dysfunctional score}=4),"R",
IF(AND({Functional score}=-4,{Dysfunctional score}=2),"R",
IF(AND({Functional score}=-4,{Dysfunctional score}=0),"R",
IF(AND({Functional score}=-4,{Dysfunctional score}=-2),"R",
"Q"))))))))))))))))))))))))
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助!
我正在用React创建一个Chrome扩展程序,该扩展程序使用Airtable数据库,从教程中逐字复制代码。在我的app.js中,我遵循在构造函数方法下添加名为“ componentDidMount”的方法的说明,该方法调用Airtable API从中获取数据值。
我在第一行的左花括号中收到一个错误:
componentDidMount() {
fetch('https://api.airtable.com/v0/app172rHs45CgT8UH/Favorites? api_key=YOUR_API_KEY')
.then((resp) => resp.json())
.then(data => {
this.setState({ movies: data.records });
}).catch(err => {
});
}
Run Code Online (Sandbox Code Playgroud)
确切的错误是';' 预期。ts(1005)
我从教程中复制了代码行,并设置了Airtable。我还粘贴了自己的唯一ID密钥,因此对于为什么会发生此错误感到困惑。我认为问题实际上不是分号,因为我尝试添加一个,但仍然会抛出该错误。我提供了紧接在问题行前后的代码的屏幕快照,以及教程的相关部分。
这是教程链接,尽管我当然不希望有人真正阅读它。如果对了解上下文有帮助,则本教程的这一部分已经过了一半,标题为:“集成React和Airtable”
https://upmostly.com/tutorials/create-simple-web-app-react-airtable/#introduction
如果有人能告诉我发生了什么,我将不胜感激。我对这个特定代码的理解还不是很强,因为我只是想完成本教程并理解其中的每个部分。
如果您需要其他信息/代码来知道出了什么问题,请告诉我。非常感谢!
我有一个谷歌工作表,每天 5 次向该工作表附加新值。每次包含值时我都需要运行本地 python 脚本,我该怎么做?
airtable ×8
javascript ×3
node.js ×2
python ×2
api ×1
automation ×1
excel ×1
formula ×1
if-statement ×1
jestjs ×1
reactjs ×1
typescript ×1