shnd
2021 年 9 月 15 日午前 1:55
1
昨日初めてAdaloとairtableのデータ連携をやりました。Airtableで作ったデータをAdaloで読みこんだところ、データのいくつかが表示されません。(レコードは5個作ったのですがAdaloのリストでは3個しか表示されません。)使い始めて間もないのでどこが悪いのか見当がつきません。誰か教えて下さい。
(AirTableで作ったデータ)
(Adaloでの表示)
(補足)
Adaloでユーザーソートが出来ないのでAirtableとデータ連携して見ようと思ってやりました。2種類のソート(小→大、大→小)をするとそれまで見えなかったデータが表示されるようになり、データ自体はAdalo側に来ているようなのです。(表示は相変わらず3個だけ)
外部データとの連携でなければリストを選択するとソートの設定でMaximum number of itemでリスト表示個数を設定できますが、airatableからデータを全部持ってきているのでそういう設定も出てきません。
kinari
2021 年 9 月 15 日午前 4:46
2
これ自分も困ったんですよね。
多分ですが、API Base URL のところに、?maxRecords=3 こういうの付いてません?これが表示するの3つまでという制限をかけてるので、これを削除して試してみてください!
kiiya
2021 年 9 月 15 日午前 7:06
3
すみません、横から失礼いたします。
自分も同様の現象で悩んでおり、質問者様よりもデータの件数が多いものになってしまうのですが、質問させてください。
API Base URLを?の前までで設定していますが、レコードが427件あるものをデータ連携すると、連携できているデータのcountが”100”となってしまいます。
これは、何が原因として考えられるでしょうか。
もし、ご存知であればよろしくお願いします
shnd
2021 年 9 月 15 日午前 8:52
4
kinari様 いつも回答ありがとうございます大変助かっています。今回の案件はkinariさんのやり方でやるとどうしてもエラーが出てうまく行かないんです。だた、私のAdalo仲間に聞いたらkinariさんと全く同じことを言っており、それで解決したというので私のやり方が悪いのだと思います。
(現在の対応)
Adalo Resourcesで調べていたらAirtableからデータを連携する時のデータの表示個数はFilterで設定できると書いてあったのでそのやり方でやったらすんなり行ったのでそれで対応しています。
(データ表示個数の設定)→多くも出来るし少なくも出来ます
1.(データを表示する)リストを選択
2.画面左側のFilter設定で以下のように入れる(2か所入力する箇所があります)
maxRecords
表示したい数を入れる:10とか20とか
kiiya様
私と同じことでお悩みのようですね。Adaloの表示個数のロジックはよく分からないですが、上記の設定を一度試してみて下さい。427件表示できるようになるかもしれませんよ。(その時はAPI BaseURLは加工しないでそのまま使ってみて下さい。私はそうしています)
kiiya
2021 年 9 月 15 日午前 9:55
5
@shnd お返事ありがとうございます!
解説もありがとうございます!
なるほどですね。
このfilter設定は、airtable上での設定でしょうか??
質問重ね重ねすみません。
ちなみに、adaloとairtableの設定はこちらの記事を参考にしました。。。
shnd
2021 年 9 月 15 日午前 11:10
6
kiiya様
私が書いているのはAdaloでのFilter設定です。(AirTableで作ったデータをAdaloで表示する)
参考画像を下に載せます。
kiiya
2021 年 9 月 15 日午前 11:48
7
@shnd 様
画像ありがとうございます!
試してみましたが、できませんでした。。。
External Collectionsで+Add collection>3.Test Connectionで表示される結果が100件でして、airtableからのAPI設定で何か問題があるのかなと、個人的には考えております。
もし、解決方法分かりましたら、共有いたします!
(追記)
こちらの記事でairtableでは100件のレコードしか返されない?との記事を見つけました。
offsetをadaloが返さないからだと書かれております。
Our app needs to retrieve data from an Airtable collection with hundreds of rows. For the Search List page, we figured out how to search/filter the Airtable collection. However, we’re hitting the API’s pagination limit of 100. How can Adalo search...
Reading time: 1 mins 🕑
Likes: 3 ❤
External Collectionsで+Add collection>3.Test Connectionで表示される結果が100件でして、airtable
もう、調べがついていそうですが、、
もともと、Airtable側が、1回のサーバー読み込みで100が限界なんですよね。
100件目にAirtableがOffsetを返すので、101件目以降の表示は、Offsetを読み込んであげる必要があります。
Airable側のフォーラムに、101件目の読取がJSONで書かれてましたが、これをAdaloで読み込ませる方法が、現在、私の力では???です。動きとしては、Offsetがなくなるまで、100件の読み込みをLOOPさせる動きがAdaloで必要です。
I have written a little vue.js app. I need it to access more than 100 records in my table though. How do I do that? Here is my code.var app = new Vue({ el: ‘#app’, data: { items: [] }, mounted: function(){ this.loadItems(); }, methods: { loadItems:...
ちなみに、代替案としては、私の場合は、
こんな感じで対応してます。
Gridview は、980件のデータがありますが
Gridview akita は、Airtable側でフィルターをかけているので、20件しかデータがないです。
この20件のデータをAdaloから呼び出します。
つまり、Adalo側でフィルターをかけると100件超えるので、Airtable側でフィルターをかけたものを都度呼び出して上げるイメージです。Airtableのフィルターは、動的に今日から30日間のフィルターなどでかけることもできるので、月次レポートなどはかならず30件を超えることは無いようにできます。
Airtableの文章 100件が上限
maxRecords `number` optional
The maximum total number of records that will be returned in your requests. If this value is larger than `pageSize` (which is 100 by default), you may have to load multiple pages to reach this total. See the Pagination section below for more.
pageSize `number` optional
The number of records returned in each request. Must be less than or equal to 100. Default is 100. See the Pagination section below for more.
REST API - Airtable
kiiya
2021 年 9 月 16 日午前 2:10
9
@tsubasa 様
ありがとうございます!
なるほど。airtable側にフィルターをかけて都度呼び出しですね!
実装したいのは、’2ヶ月分の予約枠(1回30分ほど、1000件ほど)をairtableから呼び出して表示させる’ です。
この場合だと、JSONで101件目以上の読み取りを搭載する必要がありそうですね
この質問スレでそのまま質問継続して大変申し訳ないとは思いながらも、気になっていることで、やや急ぎですので、そのまま追加質問させてください
airtableを連携しようと思ったのは、adaloで1000件ほどの予約枠をDBとしておいて、カレンダーで表示させると一気に重くなったので、airtableからの呼び出しならどうかな?と思ったからです。
そもそも、DB管理がadalo内部だろうが、外部DBだろうが、カレンダーに1000件表示させると、重くなるよ!ってことってありますでしょうか。。。
もし、そうなら、adaloでの自作は断念しようかと思っております。
@kiiya
なるほど、そうするとJSONなどの読み込み必要ですね。
そもそも、DB管理がadalo内部だろうが、外部DBだろうが、カレンダーに1000件表示させると、重くなるよ!ってことってありますでしょうか。。。
1スクリーンに1000件のカレンダーデータを一気に表示させる、、となると、残念ながら、Adaloでは、内部では遅くなると思います。外部は、その負荷がかかるサービスの許容の問題なのですが、いまのところ、選択士が分からないです。(多分このレベルなら、AWSなどでの構築になるはず)
Adalo の場合、要件に完全にマッチしてませんが、
Costom List なら、データを順番に読み取っていくので、Load items as User Scrolls でサーバーのロードを徐々に読み取っていくことが可能です。
お力に慣れそうになく、申し訳ないです
shnd
2021 年 9 月 16 日午前 3:01
11
@kinari 様
出来ました。API Base URLの?maxRecords=3の部分だけ消してコピーしてたんですが、それではうまく行かなかったので?maxRecords=3以降の部分はコピーせず、?の前の部分だけコピーしたらすんなり行きました。有難うございました。
Adalo ResoucesにAirtableとの連携の仕方というのが書かれていて、?以降はコピーするなと説明書きがありました。(下記画像)
Adalo公式文書に書かれていても日本人ユーザー全員が読んでAdalo使っているわけではないので私のようにハマる人はいるでしょうね。